一个小小的C语言题

当a=1,b=2,c=3时,执行:
if(a>c)
b=a;a=c;c=b;
后,问a、b、c的值分别为多少?请写下过程,谢谢!

第1个回答  2009-06-17
a=1,b=2,c=3
if(a>c)
b=a; // 因为a<c,if为假 值不变
a=c; //a=c=3
c=b; //c=b=2
所以a,b,c为3,2,2
第2个回答  2009-06-18
补充解释下程序的执行原理:
if语句根据表达式的正误,执行或跳过其下方由{}括起来的一组语句;但是当没有写入{}时,默认执行或跳过其下方第一条语句。
本题中,考的是无{}的情况,因为a>c为假,所以跳过b=a;语句不执行
然后依次执行a=c;c=b;
结果a b c的值分别为3 2 2。本回答被提问者采纳
相似回答