设计计算机符合所以内容

编写简易计算器实现加减乘除功能的选择,能重复使用,设计退出机制。


#include <stdio.h>

int main(void){
    float n1; // 保存第一个数字
    float n2; // 保存第二个数字
    char op; // 保存操作符号
    char continueFlag; // 保存是否继续的标志变量
    
    while (1)
    {
        printf("请输入操作:(格式:a+b; 例如 3+4 )"); 
        scanf("%f %c %f", &n1, &op, &n2); 
        switch (op){ 
            case '+': printf("运算结果为:%.2f\n", n1+n2);  break; 
            case '-': printf("运算结果为:%.2f\n", n1-n2);  break; 
            case '*': printf("运算结果为:%.2f\n", n1*n2);  break; 
            case '/': printf("运算结果为:%.2f\n", n1/n2);  break; 
            default : printf("无效的操作符号!\n"); break; // 如果输入操作符号不合法则报错提示 
        }
        printf("是否继续?(y or n):");
        scanf(" %c", &continueFlag); 
        if (continueFlag == 'n')
        {
            break; 
        } 
    }
    
    return 0; 
}
/*
简单计算器
name:zsh 
*/ 
#include <stdio.h>    //简单计算器 
 
void menu()    //运算符显示界面 
{
    printf("--------------------------------------------\n");
 
printf("请输入你的选择\n");
 
printf("1. + \n"); 
 
printf("2. - \n"); 
 
printf("3. * \n"); 
 
printf("4. / \n"); 
 
 
printf("--------------------------------------------\n");
}
 
 
int main()
{
    int i = 0;
    int j = 0;    
    int num = 0;    //存放计算结果     
    int select = 0;    //存放选择的运算符 
     
    do
    {
        menu();    //打印运算符显示界面 
         
        scanf("%d", &select);    //输入运算符编号 
         
        printf("请输入计算值");
         
        scanf("%d%d", &i, &j);    //输入运算数值 
         
        switch (select)
        {
            case 1:
                printf("%d+%d=%d\n", i, j, num=i+j);    //加法运算 
                break;
                 
            case 2:
                printf("%d-%d=%d\n", i, j, num=i-j);    //减法运算 
                break;
                 
            case 3:
                printf("%d*%d=%d\n", i, j, num=i*j);    //乘法运算 
                break;
                 
            case 4:
                printf("%d/%d=%d\n", i, j, num=i/j);    //除法运算 
                break;
                 
            default:
                printf("输入有误请重新选择!"); 
                break; 
             
        }
         
    } while(select);
     
    return 0;
     
}

  • 你可以看下这个问题的回答https://ask.csdn.net/questions/1223
  • 你也可以参考下这篇文章:用命题逻辑推理的方法解决逻辑推理问题。 根据下面的命题,试用逻辑推理方法确定谁是作案者,写出推理过程。
  • 除此之外, 这篇博客: 一些零碎代码中的 输入字符串,调用函数取出字符串中最长的单词并存入另一个字符串。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • (有待思考)#define _CRT_SECURE_NO_WARNINGS
    #include
    #include
    #includeusing namespace std;
    void index(char* s1, char* s2)
    {
    int len ,max = 0;
    char temp[50];
    while (*s1)
    {
    while (*s1 == ’ ’ && *s1 != ‘\0’) s1++;//过滤空格;

    len = 0;
    while (*s1 != ' ' && *s1 != '\0')
    {    
        *(temp + len) = *s1;//不能用*temp=*s1,why?
        len++;
        s1++;
    }
    
    *(temp + len) = '\0';//注意这种方式。
    if (len > max)
    {
        max = len;
        strcpy(s2, temp);
    }
    
    if (*s1 == '\0') break;
    

    }}
    int main()
    {
    char s1[50],s2[50];cin.get(s1,50); index(s1, s2);
    ​ cout << “s2:” << s2;
    }用队列的方法输出杨辉三角:#include
    using namespace std;
    const int maxsize = 100;
    typedef struct {
    int Q[maxsize];//存放数据
    int front, rear;
    }sequeue;
    sequeue qu;
    void setkong(sequeue& qq)
    {
    qq.front = 0;
    qq.rear = 0;
    }//置队空
    void rudui(sequeue& qq, int x)
    {
    if (qq.front == (qq.rear + 1) % maxsize)
    cout << “overflow\n”;
    else
    {
    qq.Q[qq.rear] = x;
    qq.rear = (qq.rear + 1) % maxsize;
    }
    }
    void chudui(sequeue &qq, int& x)
    {
    if (qq.front == qq.rear)
    {
    cout << “underflow\n”;
    }
    else
    {
    x = qq.Q[qq.front];
    qq.front = (qq.front + 1) % maxsize;
    }
    }
    void getfront(sequeue qq, int &x)//读取队头元素
    {
    if (qq.front == qq.rear)
    {
    cout << “error!\n”;
    }

    else
    {
    x = qq.Q[qq.front];
    }
    }
    int empty(sequeue qq)//判断队列是否为空
    {
    if (qq.front == qq.rear)
    return 1;
    else
    return 0;
    }
    void yanghui(int n,sequeue qu)
    {
    int i, j,s,t;
    setkong(qu);
    rudui(qu, 1); rudui(qu, 1);
    cout << endl;
    cout.width(4); cout << 1;
    cout.width(4); cout << 1<<endl;
    for (i = 2; i <= n; i++)//生成并输出杨辉三角第i~n行的数据
    {
    rudui(qu, 1);
    cout.width(4); cout << 1;
    chudui(qu, s);
    for (j = 2; j <= i; j++)//处理第i行中间的各数据
    {
    chudui(qu, t);
    rudui(qu, s + t);
    cout.width(4); cout << s + t;
    s = t;

        }
        rudui(qu, 1);
        cout.width(4); cout << 1<<endl;
      
    }
    cout << endl;
    


    }
    int main()
    {
    int m;
    cin >> m;
    yanghui(m, qu);
    }

  • 您还可以看一下 AI100讲师老师的朋友圈爆款背后的计算机视觉技术与应用课程中的 朋友圈爆款背后的计算机视觉技术与应用小节, 巩固相关知识点