| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1433 人关注过本帖
标题:求助:关于C语言中自增的一个问题
只看楼主 加入收藏
gahddd
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-9-19
收藏
 问题点数:0 回复次数:29 
求助:关于C语言中自增的一个问题
#include "stdio.h"
main()
{
int a=4,b;
b=(++a)+(++a)+(++a);
printf("%d\n",b);
}
这段程序在VC中得到结果为19,在TC中结果为21,在TC中的结果我能算出来,但在VC中得到19就不懂了。

忘哪位高手 知道的给个答案,谢谢。
搜索更多相关主题的帖子: C语言 
2007-10-23 21:30
lxm520910
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-10-3
收藏
得分:0 
21??我怎么算不出来呢??
在说这样的题目多大用处,一般不那样写的,不易懂。
2007-10-23 21:35
lxm520910
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-10-3
收藏
得分:0 

我又想,那3个数应该是连续的数吧!那就用初中的方程解下看先,3x=19,21。可以借出x值先。在琢磨!!

2007-10-23 21:38
zxc1998
Rank: 1
等 级:新手上路
威 望:1
帖 子:133
专家分:0
注 册:2007-3-21
收藏
得分:0 

不错,这道题有助于理解自加的问题,19还没有想出来,没有vc的环境

2007-10-23 21:42
gahddd
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-9-19
收藏
得分:0 
这道题是我今天上课时一个学生问我的,我也跟他说了这种用法是不提倡使用的,就算是应付过去了,但是我就想知道在VC中怎么能算出来得19呢??21很好理解,但19就有点令人费解了,大家可以互相探讨一下。

俺从乡下来,俺啥也不懂。
2007-10-23 21:47
xindeluoye
Rank: 2
等 级:论坛游民
帖 子:49
专家分:20
注 册:2007-10-8
收藏
得分:0 

有意思,呵呵
我也运行了一下,好象是对前两个(++A)用同一个值进行计算后面的依次递增计算进去的
具体原因:搜索中


2007-10-23 21:49
gahddd
Rank: 1
等 级:新手上路
帖 子:38
专家分:0
注 册:2006-9-19
收藏
得分:0 
嗯,我也是这样想的,因为如果把程序的b=(++a)+(++a)+(++a);改成b=(++a)+(++a);后得到的结果就是12。但是就是不知道为什么会这样算?

俺从乡下来,俺啥也不懂。
2007-10-23 21:54
yangzhifu
Rank: 1
等 级:新手上路
威 望:2
帖 子:433
专家分:0
注 册:2007-4-11
收藏
得分:0 
我有个建议:
就是搜一搜吧,有很多的前人的好方法

方寸之内,剖天下; 方坛之内,析自我;
2007-10-23 21:59
lxm520910
Rank: 1
等 级:新手上路
帖 子:96
专家分:0
注 册:2007-10-3
收藏
得分:0 
你在多加几个++a   看运行结果,你就会知道它是怎么编译的,但想不明白为什么会那样编译。和书上不一样
2007-10-23 22:24
rayxiang
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2007-10-22
收藏
得分:0 
他的直相差3,我想两个版本的算法顺序不同吧...一个是自右向坐,一个是自左向右..

...........没 有 音 乐 就 没 法 活............ ...........不 会C 语 言 我 可 以 问...........
2007-10-23 23:38
快速回复:求助:关于C语言中自增的一个问题
数据加载中...
 
   



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

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