快捷导航

在”请输出运算符“后的scanf为什么不能用%c,运算符不算字符吗

#include void main(){        float num1,num2,sum;        char a;        while(1){        printf("请输入一个数\n");        scanf("%f",&num1);        printf("请输入一个运算符\n");        scanf("%s",&a);//scanf("%c",&a);        printf("请在输入一个数\n");        scanf("%f",&num2);        switch(a){                        case('+'):                        sum=num1+num2;                        printf("两数相加为%.2f\n",sum);                        break;                case('-'):                        sum=num1-num2;                        printf("两数相减为%.2f\n",sum);break;                case('*'):                        sum=num1*num2;                        printf("两数相乘为%.2f\n",sum);break;                case('/'):                        if(num2!=0){                                sum=num1/num2;                                printf("两数相除为%.2f",sum);}                        else{                        printf("除数不能为0!\n");}                        break;                default:                        printf("请检查输入的是否为运算符!\n");                        break;        }                }        }

免责声明:本内容仅代表回答者见解不代表本站观点,请谨慎对待。

版权声明:作者保留权利,不代表本站立场。

回复

使用道具 举报

参与会员2

getchar();//scanf()函数输入的时候结尾处有一个'\n'换行符,要通过getchar()处理掉scanf("%c",&a);
回复

使用道具 举报

可以,
回复

使用道具 举报

可能感兴趣的问答

发新帖
  • 微信访问
  • 手机APP