#include<stdio.h>int main (){ int a=2,b=-1,c=2; if(a<b) if(b<0) c=0; else c+=1; printf("%d\n",c); return 0;}
8 回答
已采纳
阿旭_
TA贡献217条经验 获得超353个赞
以下代码变形得(加回{}之后的样子如下)
#include<stdio.h>int main (){ int a=2,b=-1,c=2; if(a<b){ if(b<0){ c=0; }else { c+=1; } } //因为a>b(2>-1)所以没有走if里的内容,c还等于原来的值 printf("%d\n",c); return 0; }
慕课朵颐3509194
TA贡献3条经验 获得超0个赞
else和它上面最近的没有被配对的if进行配对。因而这个else是和第二个if配对的。第一个if没有else,既然第一个if条件就不成立,则会跳到if下的语句执行。
- 8 回答
- 2 关注
- 2048 浏览
添加回答
举报
0/150
提交
取消