switch不知道哪里用错了
#include<stdio.h>int main()
{
float result ,one ,two;
char ch;
printf("请输入式子:");
scanf("%.2f %c %.2f",&one,&ch,&two);
switch(ch)
{
case '-':two = -two;
case '+':result = one + two;break;
case '*':result = one * two;break;
case '/': if(two != 0)
{
result = one / two ;break;
}
else {
printf("很遗憾,除数不能为零!\n");break;
}
}
printf("结果是:%.2f\n", result);
return 0;
}
不管输入什么式子都等于0.00 本帖最后由 superbe 于 2019-9-6 11:35 编辑
scanf("%.2f %c %.2f",&one,&ch,&two); //不能指定输入小数位数,这行改成如下:
scanf("%f %c %f",&one,&ch,&two); scanf("%.2f %c %.2f",&one,&ch,&two);
switch(ch)
{
case '-':two = -two;break哪去了
case '+':result = one + two;break;
case '*':result = one * two;break;
case '/': if(two != 0)
另外,scanf没有指定小数位数这一说 兄弟,学你的,哈哈哈哈
#include<stdio.h>
int main()
{
float result ,one ,two;
char ch;
printf("请输入式子:");
scanf("%f %c %f",&one,&ch,&two);
switch(ch)
{
case '-':two = -two;
case '+':result = one + two;break;
case '/': if(two!=0)
{
two = 1/ two ;
}
else {
printf("很遗憾,除数不能为零!\n");break;
}
case '*':result = one * two;break;
}
printf("结果是:%.2f\n", result);
return 0;
} bin554385863 发表于 2019-9-6 11:41
scanf("%.2f %c %.2f",&one,&ch,&two);
switch(ch)
{
swit只能选择int型数据吖 AmosAlbert 发表于 2019-9-6 22:31
swit只能选择int型数据吖
字符的表现形式就是整形 switch的case只能判断整数...... bin554385863 发表于 2019-9-6 23:14
字符的表现形式就是整形
??????? AmosAlbert 发表于 2019-9-24 23:18
???????
电脑会把字符转换成ASCII码存储起来 bin554385863 发表于 2019-9-25 12:37
电脑会把字符转换成ASCII码存储起来
oh,讲明白了
页:
[1]