请问第一段代码定义一个bool型变量有什么优点?(两段代码都能实现简单的四则运算)
第一段代码:#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;
}
第二段代码只截取部分不同:
switch (ch)
{
case '-':op2 =-op2;
case '+':result = op1 + op2;break;
case '*':result = op1 * op2;break;
case '/':
if (op2 != 0)
{
result = op1 / op2;break;
}
else
{
printf("除数不能为零!\n");
return 0;
}
}
printf("结果为:%.2f\n",result);
return 0;
}
只是个人习惯问题,我觉得第二个写法也很好 第一个代码 多定义了一个变量, 多了一次判断有啥好的
页:
[1]