一道C语言题? 得出的结果应该是多少,a,b,q,p ?

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:41:02
#include"stdio.h"
void main()
{ int a=5,b=5,p,q;
p=(a++)+(a++)+(a++);
q=(++b)+(++b)+(++b);
printf("a=%d\nb=%d\np=%d\nq=%d\n",a,b,p,q);
}

为什么
我在C++里面运行,结果是a=8 b=8 p=15 q=22
我在TC里面运行, 结果是a=8 b=8 p=15 q=24

不同的编译环境有不同结果 因为不同的编译环境对++的处理顺序要求不一致
这可以不去追究的 重要的是按照课本上讲的顺序就行
在实际应用中是不会有这么复杂的++运算的

你发的代码那里是不是错了

根据你的代码应该是:
a=8
b=8
p=18
q=21

标题(共9条) 回答数 状态 提问时间
·为什么我的QQ照片在QQ框中显示网站不是照片

a=8
b=8
p=18
q=21
才对