猿问
解析说两个If都不满足为什么?
int a=3,b=5, c=7; if(a>b)a=b;c=a; if(c!=a)c=b;; printf("%d,%d,%d\n",a,b,c);
街角疯
浏览 2171
回答 2
2回答
慕粉3491951
第一个if 3>5肯定不成立,第二个if前面执行了c=a,所以也不成立if后面没加{}只有紧跟着的第一条语句是满足条件时执行的
0
0
0
全_无_修
今后要树立编写出高质量代码的理念。int a =3, b = 5, c = 7;if( a > b ){ //if条件默认情况下之作用于一条语句。若想让if条件作用多条语句,就把多条语句用大括号括到if的条件下。a = b;}c = a; //这条语句没有在第一个语句里,这条语句在这个程序里,是一定会执行的。它一执行就是将a里的3,赋给了c。 //这样就意味着从此开始c里的值也等于3了,此时c里的值变了。a里的值还是3。就是"c == a"(c和a相等)了。if( c != a){ //而这里的if里的条件是“c != a”(c不等于a),由上一条语句可知“c != a”为假,所这个if条件也不满足。c = b;}
0
0
0
随时随地看视频
慕课网APP
相关分类
C
typedef入门问题
1 回答
Premiere
我要回答