鱼C论坛's Archiver
论坛
›
C\C++交流
› if else语句
认真学好C语言
发表于 2021-3-27 00:00:54
if else语句
int a=2,b=-1,c=2;
if(a<b)if(b<0)c=0;else c+=1;
printf("%d",c);
为什么最后c的输出结果为2
是第一个if(a<b)不执行所以整个语句不执行从而导致else也不执行 c按原数输出?
chxchxkkk
发表于 2021-3-27 00:10:08
代码没有用{}分出层次,按就近原则else c+=1应该是与if(b<0)配对的。当if(a<b)不成立,程序就直接运行到printf语句了。
页:
[1]
查看完整版本:
if else语句