求助,为什么我复制了答案里面的代码,却编译有BUG了
#include <stdio.h>#include <stdbool.h>
int main()
{
float op1, op2;
char ch;
float result;
bool invalid = false;
printf("请输入式子:");
scanf("%f %c %f", &op1, &ch, &op2);
switch (ch)
{
case '-': op2 = -op2; // no break
case '+': result = op1 + op2; break;
case '*': result = op1 * op2; break;
case '/':
if (op2 != 0)
{
result = op1 / op2;
break;
}
else
{
invalid = true;
break;
}
}
if (invalid)
{
printf("除数不能为零!\n");
}
else
{
printf("结果是:%.2f\n", result);
}
return 0;
}
这个是 带你学C带你飞 的答案代码(请见12课switch语句和分支嵌套),我电脑出来的结果是图片这样子,我不知道出了什么问题,请大神解答!!! 输入要带空格
3 + 6
而不是
3+6 你这是什么软件
我在Dev-c++上和vs2019上都试了,没有问题 shake_a_tree@16 发表于 2021-2-21 11:05
输入要带空格
3 + 6
而不是
scanf的解析里有一句话
空白字符:该函数将读取并忽略空白字符(空白字符包含空格、回车和制表符)
所以,这个问题,输入有无空格都是一样的 李京 发表于 2021-2-25 20:19
你这是什么软件
我在Dev-c++上和vs2019上都试了,没有问题
我用的就是Dev-c++
就是运行编译就会这样 本帖最后由 李京 于 2021-2-26 19:39 编辑
vitalfish 发表于 2021-2-26 19:32
我用的就是Dev-c++
就是运行编译就会这样
我就是直接复制你的代码的,一句没改
在Dev-c++上没有问题
我用Dev-c++
创建过程:
文件->新建->源代码 李京 发表于 2021-2-26 19:35
我就是直接复制你的代码的,一句没改
在Dev-c++上没有问题
没事,我今天进电脑试了一下,发现已经可以了,可能那天文件除了什么问题。谢谢谢!!1{:10_275:} vitalfish 发表于 2021-2-26 19:40
没事,我今天进电脑试了一下,发现已经可以了,可能那天文件除了什么问题。谢谢谢!!1
差点让我以为小甲鱼要身败名裂了{dog}
{:10_279:}
页:
[1]