| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1573 人关注过本帖
标题:我认为是答案错了。
只看楼主 加入收藏
中轴线
Rank: 1
等 级:新手上路
帖 子:32
专家分:0
注 册:2006-2-25
收藏
得分:0 
以下是引用feng1256在2006-3-7 1:04:00的发言:

i 先做两次自增为7 3个7是21 然后再做一次自增为8

同意!


2006-03-08 17:38
mwjpiero
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-3-4
收藏
得分:0 
答案不唯一,不用自责,是出题目的老师有问题,你可以去和你们老师说,问他到底有没有研究过这种题目
2006-03-08 18:49
sunnvya
Rank: 5Rank: 5
等 级:贵宾
威 望:17
帖 子:1094
专家分:0
注 册:2005-11-23
收藏
得分:0 
K=7+7+7=21;
I=8;
k=(++i)+(++i)+(i++)
先进行++i,i增到6,
再++i,i增到7,
i++,i先附值再增到8
结果K=21;

http://www. 第二站>>>提供源码下载
2006-03-08 19:01
xzx1002002
Rank: 2
等 级:论坛游民
帖 子:68
专家分:27
注 册:2006-3-7
收藏
得分:0 
楼主应该是对的。
i++是先运算后自增.
++i是先自增后运算.
2006-03-08 19:39
mwjpiero
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-3-4
收藏
得分:0 

大家都不要给错误的结论了
都说了答案不唯一,各个编译器有不同的结果。

2006-03-08 19:41
谢芳
Rank: 1
等 级:新手上路
帖 子:12
专家分:0
注 册:2006-3-3
收藏
得分:0 

我认为你的答案是正确的啊。

2006-03-08 19:43
mwjpiero
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-3-4
收藏
得分:0 
建议斑竹出来给个正确的说法,我觉得这种胡乱推测对新手学习很不利。
2006-03-08 19:46
梦想中国
Rank: 2
等 级:新手上路
威 望:5
帖 子:539
专家分:0
注 册:2006-2-26
收藏
得分:0 
单目运算符的优先级高与加法运算符

2006-03-08 20:53
yqz_b
Rank: 1
等 级:新手上路
帖 子:35
专家分:0
注 册:2006-3-1
收藏
得分:0 
我认为都不是完全正确。
int i=5,k;
k=(++i)+(++i)+(i++);
printf("%d",k);结果是21。可
int i=5;
printf("%d",(++i)+(++i)+(i++));
确是20。这怎么解释啊?

2006-03-08 20:53
mwjpiero
Rank: 1
等 级:新手上路
帖 子:68
专家分:0
注 册:2006-3-4
收藏
得分:0 

在一个顺序点发生时,对于++和--这种符号,C编译器可以选择先计算哪个参数的值,这个自由度提高了编译器的效率,但像上面这个例子,就会带来麻烦,所以要避免这种问题。

2006-03-08 21:10
快速回复:我认为是答案错了。
数据加载中...
 
   



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

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