c语言程序设计

第10怎么写啊,要解释,谢谢

这题你做对了,经过本人亲测,证明答案是7,9,6,8是没错的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-09-12
a++、b++都是执行语句后再自增1。

赋初始值:a=6;b=8
x=a++;将a的值,就是6,赋给x,x=6;然后a自增1,a=7
y=b++;将b的值,就是8,赋给y,y=8;然后b自增1,b=9
依次输出a,b,x,y,因此输出结果为7,9,6,8
你在横线上用红笔写的结果是正确的。本回答被网友采纳
第2个回答  2019-09-12
第10题答案应该是6,8,7,9吧?追答

首先a=6,b=8,之后到了x=a++,这里是先把a的值赋给x进行计算,之后再自增加1。a++和++a是不同的,++a是先自增再执行表达示,执行表达式时使用的是自增后的a。如果是++a,那么将a进行自增,先算a=a+1=7,之后执行x=a++=8,这么做才能得到你原来那个错误的结果。题中给的是a++,a++是先执行表达式后再自增,执行表达式时使用的是a的原值。所以原式是先用a的原值计算x,即x=a+1=7,之后再进行自增。
而a++在本行是不进行自增的,或者说有a++的地方算作第一次使用a,a的值保持不变,按程序执行顺序走的第二次使用a的地方,a的值为第一次a自增的结果,因为这个题只执行了一次,所以a还未执行自增的操作,程序便已经输出,输出的值还是a原来的值(b++同理),所以结果为a=6,b=8,x=7,y=9
这里考察的是a++和++a的知识点,向来他们俩都是比较绕人的,你在好好琢磨琢磨,这个东西,期末c语言选择题是百分之百要考的,一定要整明白了