11年春的江苏省计算机二级题目,急求,关于逗号运算符

设有声明“int a=4,b=3,c=5;”,以下4个程序段中有3个程序段的执行效果是相同的,另一个执行效果不同的是:_____________。
A. if(a>b) c=a,a=b,b=c; B. if(a>b) {c=a,a=b,b=c;}
C.if(a>b) c=a;a=b;b=c; D. if(a>b) {c=a;a=b;b=c;}
详细讲讲他们的区别,谢谢~

选C
C里面因为是分号,因此 if 条件判断后只执行c=a; 后面两句跟 if 完全没关系,相当于
if (a > b)
{
c = a;

}
a = b;
b = c;追问

但是为什么做出来的结果完全一样呢?

追答

因为这道题a本身大于b,所以结果完全一样,如果a<b,那么c=a不会执行

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-06-29

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网