请问一道C语言程序题

来源:百度知道 编辑:UC知道 时间:2024/06/08 04:41:10
题目:当a=1,b=2,b=3时,以下if语句执行后,a、b、c中的值分别为____

if (a>c)
b=a,a=c,c=b;

书上答案是3、2、2,可是为什么呢><||| 我最近刚开始学C语言,请各位高手不要嘲笑~谢谢^^
对不起,是a=1,b=2,c=3

你还是把题目打错了,应该是:
if (a>3)
b = a; a = c; c = b;
注意这之间应该是分号而非逗号。
所以现在题目已经很好理解, 本题的迷惑性在于if语句只作用在b = a;这一条语句,因为少了大括号,即不是:
if (a > 3)
{b = a; a = c; c = b;}
所以根据题目, (a = 1) < (c = 3),if判断条件后的第一个语句不执行,但后面的语句还是要执行的, 即a = c = 3; c = b = 2;
因此答案是3,2,2

当a=1,b=2,b=3时

我怎么也没有看到c啊???????

提问题能不能认真、仔细、负责一点?????

就你这样的学习态度,我断定你这人学不好、学不精任何东西。

a=1,b=2,c=3