请问一道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>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