为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

C
慕运维5483060 2017-01-02 17:47:24
#include <stdio.h>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 回答

已采纳
?
望远

TA贡献1017条经验 获得超1032个赞

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


查看完整回答
反对 回复 2017-01-02
?
DOUBLE_l

TA贡献45条经验 获得超12个赞

可以,
查看完整回答
反对 回复 2017-01-02
  • 2 回答
  • 0 关注
  • 1466 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信