C语言初学者很简单的问题...5
来源:百度知道 编辑:UC知道 时间:2024/07/02 19:35:30
inta=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf("%d,%d,%d\n",a,b,c);
输出结果是0,0,5
inta=0,b=0,c=0;
c=(a-=a-5),(a=b,b=b+3);
printf("%d,%d,%d\n",a,b,c);
的输出结果呢?是0,3,5 还是0,0,5
c=(a-=a-5),(a=b,b+3);
printf("%d,%d,%d\n",a,b,c);
输出结果是0,0,5
inta=0,b=0,c=0;
c=(a-=a-5),(a=b,b=b+3);
printf("%d,%d,%d\n",a,b,c);
的输出结果呢?是0,3,5 还是0,0,5
c=(a-=a-5) 先算括号中的,因为减号的优先级高,先算a-5,就得到-5,括号中为a-=-5,就是a=a-(-5),a初始值是0,a=0-(-5),a就是5,然后c=a,c就是5,a=b,b的初始值是0,a就等于0,然后计算b+3,但b的值没有变。
第二个b=b+3,b+3是3,然后b=3,b就被赋值为3
所以是
0 3 5
0,3,5
linux上机测试,保证准确
参考符号优先级即可。a=a-(a-5)=5,赋给c,c=5。
b赋值给a,a=0。
b=b+3,b=3。
即0,3,5
自已试下不就知道了!
0,3,5