作业帮 > 综合 > 作业

C语言,这个程序的解释,值为什么是0,0,-10.怎么算的

来源:学生作业帮 编辑:搜搜考试网作业帮 分类:综合作业 时间:2024/04/27 09:37:12
C语言,这个程序的解释,值为什么是0,0,-10.怎么算的
main()
{
int a=0,b=0,c=0;
c=(a+=a-=5),(a=b,b+3);
printf("%d,%d,%d"\n,a,b,c);
}
C语言,这个程序的解释,值为什么是0,0,-10.怎么算的
首先你写的程序就有问题.
c=(a+=a-=5),(a=b,b+3);中间那个逗号应该是英文状态下的.c=(a+=a-=5),(a=b,b+3);
给你说说逗号的运算规则吧.逗号运算符是从左到右运算的.
所以,你的程序先运行c=(a+=a-=5),这个运算下来a=-10的,所以c=-10.之后就是运算(a=b,b+3);这里面再次从左到右运算,也就是先运算a=b,此时a=0,之后运算b+3,b的值一直没有变,所以b还是0.
所以最后的结果就是0,0,-10了.