#include<stdio.h> void main() { int a=3; a+=(a<1)? a:1; printf("%d尀n",a); } 请问它的结果为什么是4.

2024-11-28 21:06:53
推荐回答(3个)
回答1:

很明显,当对条件 a < 1 进行判断时,因为a = 3 因此判断结果为false ,将执行 :号后面的表达式-----也就是1-------也就是a += 1, 因为a =3 因此 a += 1 的最终结果为4 。 明白了吗? :)

回答2:

(a<1)?a:1 这里用的是三元运算符,意思是如果a<1成立则等式变成a+=a,如果不成立等式变成a+=1。前一句已经给a赋值为3大于1,所以等式就是a+=1 结果为4

回答3:

哪你得了解每个符号代表什么意思,然后再仔细算算看