| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 610 人关注过本帖
标题:请问,这个;
只看楼主 加入收藏
chuxian03
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-10-28
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:7 
请问,这个;
a=3,b=5
c=(++a)*b+(++a);

结果是多少,为什么是那个结果呢?
请高手说的尽量详细点解的步走。我是个新手。谢谢了.



[ 本帖最后由 chuxian03 于 2009-10-29 12:03 编辑 ]
2009-10-28 23:35
chiZ
Rank: 2
来 自:paradise
等 级:论坛游民
帖 子:27
专家分:99
注 册:2009-10-25
收藏
得分:5 
is c = (++a)*b*(++a)? if it is, then the result is 125.
++a is prefix increase. this means it would increase one before do the calculation. in the first parentheses, a is 4. then it becomes 5 in second parentheses. then c = 5*5*5 = 125
2009-10-29 02:47
fuyang163
Rank: 2
等 级:论坛游民
帖 子:36
专家分:59
注 册:2009-4-13
收藏
得分:5 
二楼正确。“++”的优先级高于“*”,所以先计算两个“++a”得到“a=5”,在计算便是“5*5*5=125”
2009-10-29 07:52
chenhongwu
Rank: 1
来 自:甘肃天水
等 级:新手上路
威 望:1
帖 子:6
专家分:6
注 册:2009-6-3
收藏
得分:0 
以上都很正确啊,

云儿
2009-10-29 08:42
chuxian03
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-10-28
收藏
得分:0 
可我计算得30啊。还有3楼的朋友,为什么++a是等于5,而不是4.??
2009-10-29 12:02
jammyzm
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:90
专家分:126
注 册:2008-12-1
收藏
得分:5 
a=3,b=5
c=(++a)*b+(++a);

计算步骤是:
1.计算两次++a后a由3变为5

2.c=5*5+5=30
2009-10-29 12:11
baojin
Rank: 2
等 级:论坛游民
帖 子:28
专家分:73
注 册:2009-10-12
收藏
得分:5 
a不是++了2次么?  也就是说第一个++a后啊的值被改成了4,后面的++a后a的值变成了5了,因为++的优先级高于*,所以返回计算是a的值已经是5了,那么无论第一个a还是后面的a都会是以5的值参与运算,所以是5*5*5=125
2009-10-29 12:14
chuxian03
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2009-10-28
收藏
得分:0 
原来是这样,多谢各位了。
2009-10-29 12:18
快速回复:请问,这个;
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017389 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved