c语言的流程图,加分析

img

流程图如下:

img

逻辑如下:

a= 3,b=2,c=1,x=0;

判断a<b,a=3,b=2,a<b不成立,x=b不执行
因为if后面没有{},所以b=a;a=x不属于if,不受if语句的影响
执行 b =a = 3;
执行 a =x = 0;

判断b<c,b=3,c=1,b<c不成立,x=c不执行
判断c<a, a=0,c=1,c<a不成立,x=a不执行
x的值不变,仍然是0

x最终还是0
if(a<b)不成立,所以x=b不执行。由于if并没有用代码块,所以b=a和a=x并不在if条件下,因此肯定会执行,从而b=3,a=0
if(b<c)和if(c<a)都不成立,因此什么也没做。最终x并没有变化,还是0