我想知道main() {int a=1,b=2,c=3; printf(“%d,%d,%d,%d\n",a=b=c,a=b==c,a==(b=c),a==(b==c)) }结果是为什么3,1,0,0
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/24 22:00:12
xœn0_%T $kM
$q2MvWMb҆QZMe2w'v(4)Jg;Ws#/}5*dVF,|aUw͟D|p~ FY{M_HGzcoA:'Q?].o0d1(BָYccveo\qScu_wMT|Р
"brH&m)〕Y faYs'H-Xk~:&Bv\~*Y*j9ZT,8OrC~0̹歡nT v(*c+XM sZE~5$ƒDbq(
5Cq^Alg/GTޑB&MܞQBl'rT;;XWK+~uUDyNdjOo
׃MR.eG+[Q+IF*n")es1
我想知道main() {int a=1,b=2,c=3; printf(“%d,%d,%d,%d\n",a=b=c,a=b==c,a==(b=c),a==(b==c)) }结果是为什么3,1,0,0
我想知道main() {int a=1,b=2,c=3; printf(“%d,%d,%d,%d\n",a=b=c,a=b==c,a==(b=c),a==(b==c)) }
结果是为什么
3,1,0,0
我想知道main() {int a=1,b=2,c=3; printf(“%d,%d,%d,%d\n",a=b=c,a=b==c,a==(b=c),a==(b==c)) }结果是为什么3,1,0,0
首先这是输出后面斯个表达式这知道吧!其实就是四个表达式.你去查下运算符优先级
a=b=c:c先赋值给b那么b=3,b在赋值给a,那么a=3,此时a,b,c都等于3;输出3;
a=b==c:先进行比较预算判断是否等于c,显然b等于c(都是3),那么返回1,在赋值给a,这样a就为1;输出1;
a==(b=c):先算()里的,将c赋值给b,(此时b,c都是3),再判断a是否等于3,(因为上面得到a=1)显然不等0所以返回a=0,输出0;
a==(b==c)):先判断把是否等于c,都等于3,所以相等返回1 ,在判断a否等于1,(此时a=0),所以不相等,返回0