| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2537 人关注过本帖
标题:我预期的结果是30 ,为什么程序运行的结果是25?
取消只看楼主 加入收藏
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
结帖率:72.73%
收藏
已结贴  问题点数:20 回复次数:7 
我预期的结果是30 ,为什么程序运行的结果是25?
int main()
{
    int a=5,b;
    b=++a*--a;
    printf("b=%d\n",b);
    return 0;
}
我预期的结果是:30 ,为什么程序运行的结果是25?


[ 本帖最后由 redice 于 2009-9-3 18:42 编辑 ]
搜索更多相关主题的帖子: 结果 运行 
2009-09-03 18:40
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 3楼 handsomeisme
"希望你能仔细区别一下a++和++a,这两个是不一样的。"  呵呵,这两个当然是不一样的。

a=5;
(++a)的值=6,a的值=6;
(--a)的值=5,a的值=5;
这样算的结果就是30
++,--的结合方向是“自由至左”的, 所以应该先算(--a),再算(++a)
a=5;
(--a)的值=4,a的值=4;
(++a)的值=5,a的值=5;
这样算的结果是20

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-03 20:36
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 5楼 朔月
运算是有先后顺序的

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-03 20:37
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 8楼 handsomeisme
这大家都知道...

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-03 20:46
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 10楼 皇后
25你是怎么计算的?

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-03 20:52
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 27楼 prankmoon
还是 汇编有说服力 ,呵呵。

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-06 19:34
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 19楼 xiongli181
这个问题提的好,继续关注

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-06 19:36
redice
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:902
专家分:0
注 册:2006-12-11
收藏
得分:0 
回复 36楼 yuehai1117
有一定说服力  

鲲鹏数据 - 专业Web数据采集服务提供者
http://www.
2009-09-06 19:38
快速回复:我预期的结果是30 ,为什么程序运行的结果是25?
数据加载中...
 
   



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

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