99问答网
所有问题
c语言 int y=0,x=3; y=++x*++x*++x;
执行之后xy的值为多少。我做出来x的值为6y的值为120,但错了,这是为什么?好心人拜托帮帮忙
举报该问题
推荐答案 推荐于2018-05-04
执行过程
1、(++x*++x)++x*
运算过程是先运算括号里面的,第一次++x,x=4,第二次++x,x=5
然后运算(5*5)*++x
2、(5*5)*++x时,先运算++x,x=6,此时运算结果为:(5*5)*6
原因程序先运算前++再将计算结果在做运算。
由此等式可以写成[(1+x)*(1+x)]*(1+x)
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://99.wendadaohang.com/zd/BWXtttBWv.html
其他回答
第1个回答 2013-01-15
y=(++x*++x)*++x
而(++x*++x)后x=5,y=25,后面你就知道了吧?
第2个回答 2013-01-16
建议C语言书写更规范点
第3个回答 2013-01-15
x=6,y=150
你看看
相似回答
大家正在搜
相关问题
c语言 int y,x=3;y=(++x)+(++x); 则...
C语言中求算术表达式的值:设x=2.5,a=7,y=4.7求...
C语言:已有定义int x=3,y=4,z=5;则表达式 !...
C语言问题 a=7,x=2.5,y=4.7,则x+a%3*(...
C语言问题 main() { int x,y; double...
C语言,x=1,y=2,1.0+x/y=?(1:x是int,...
c语言中x+a%3*(int)(x+y)%2/4 x=2.5...
一个C语言的算法?(float)(a+b)/2+(int)x...