关于#C语言#的问题,如何解决?

img

img


第一个,经过if语句后,a不是变成8了吗
还有第二个,思路是什么?

第二题选A 你看看对吧

因为a<b,所以执行第一个if语句,得到a=8,b=4.
因为a<c,所以执行第二个if语句,得到a=5,c=8.

1 是容易犯的低级错误,if 语句覆盖的执行区域问题,要使几个写在一行的语句都在if判断条件下执行,需要有{}。象下面这样就容易明白为什么输出的结果是5了吧。

if(a < b)
{
  t=a;a=b;b=t;
}