| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 767 人关注过本帖
标题:[求助] C语言问题
只看楼主 加入收藏
lccandlsq
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-3
收藏
 问题点数:0 回复次数:16 
[求助] C语言问题

#define SQ(y) ((y)*(y))

main(){

int i=1;

while(i<=5)

printf("%d\n",SQ(i++));

}

这个的结果 应该是2 12 30吧!!可是我的编译器运算的结果怎么是1 9 25啊!!

我用的是VC 6.0啊 有的网友用WIN-TC运算的结果就是2 12 30啊!这是编译器的原因吗?

问一下为什么我运算不出预期的结果呢!!

谢谢谢谢!!!!

搜索更多相关主题的帖子: C语言 
2007-06-03 13:20
风之舞鹤
Rank: 1
等 级:新手上路
帖 子:180
专家分:0
注 册:2007-6-2
收藏
得分:0 

VC是写C++用的.我用TC运行结果是:2 12 30.
我想应该和编辑器有点关系吧!


2007-06-03 14:17
lccandlsq
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-6-3
收藏
得分:0 
高手太少,就是编译器的问题啊,呵呵。不过偶解决了。呵呵

List some uncertainty/undefined behaviour in C/C++ I can remember for now.

1) Repeat ++, -- on the same expression more than once.
2) Modify the same variable more than once on function call parameter passing.
3) Doing bitwise operation on negative number
4) Please add more...

Generally to say, we should avoid coding in above area...

这一个高手回答地,呵呵,希望对你也有帮助
2007-06-03 14:37
wshyj18
Rank: 1
等 级:新手上路
帖 子:124
专家分:0
注 册:2007-5-14
收藏
得分:0 
我好觉得是1 3 25

2007-06-04 23:11
cyzyh88
Rank: 1
等 级:新手上路
帖 子:34
专家分:0
注 册:2007-5-23
收藏
得分:0 
我用WIN-TC 答案为2 12 30

2007-06-05 00:11
小子也大叔
Rank: 2
等 级:新手上路
威 望:4
帖 子:143
专家分:0
注 册:2007-4-23
收藏
得分:0 
我用dev 答案是1 9 25 
但我想不明白为什么是它呢  怎么不是1 4 9 16 25呢  怎么就只有3个呢??
哪个给我讲解下嘛!~~~~

希望一心想学c的加我的群吧~~ 40834003
2007-06-05 00:29
夜火
Rank: 1
等 级:新手上路
帖 子:149
专家分:0
注 册:2007-5-30
收藏
得分:0 

呵呵 DEFINE 就是 替换呀

你不要把那当一个算

不考虑替换 直接 用 i++去替换y
你就应该明白了吧
不要被外表迷惑哦

[此贴子已经被作者于2007-6-5 8:10:29编辑过]


2007-06-05 08:08
冷雨焰火
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-5-20
收藏
得分:0 
还是不太明白 能说详细点吗

2007-06-05 08:39
夜火
Rank: 1
等 级:新手上路
帖 子:149
专家分:0
注 册:2007-5-30
收藏
得分:0 
((y)*(y))


把i++代入 是 ((i++)*(i++))
结论是2个 i++

...就这么简单

2007-06-05 08:41
lishizelibin
Rank: 2
等 级:论坛游民
帖 子:513
专家分:41
注 册:2007-5-10
收藏
得分:0 

#define SQ(y) ((y)*(y))

main(){

int i=1;

while(i<=5)
{
printf("%d\n",SQ(i));
i+=2;
}
}
我在两个编译器运行结果都为 1 9 25

[此贴子已经被作者于2007-6-5 10:52:05编辑过]


惟有学习不断的学习!
2007-06-05 10:43
快速回复:[求助] C语言问题
数据加载中...
 
   



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

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