int a=3,b=2,c=1; if(a>b>c) a=b; else a=c; 最后a的值是多少? 为什么 分析一下。

float *pf=&f,f ; 是错的?float f,*pf=&f; 才是对的?
2024-11-20 03:18:30
推荐回答(3个)
回答(1):

若程序没有问题,答案应该是1;
a>b>c 按从左到右的顺序,a>b 为真即为1,1>c为假,所以if不成立,else成立。a=c=1;

要想if成立,需修改为:if(a>b && b>c)

回答(2):

a等于1,因为a>b>c其实是(a>b)>c,也就是1>1,所以表达式为假

回答(3):

a=1
主要是考察if(a>b>c)
a>b的真值是1,1=c,所以if中的不成立,所以a=c。