| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1092 人关注过本帖
标题:[求助]while问题
只看楼主 加入收藏
xbw0114
Rank: 1
等 级:新手上路
帖 子:141
专家分:0
注 册:2007-8-8
收藏
得分:0 
以下是引用xbw0114在2007-10-3 19:42:58的发言:
#include <iostream.h>
void main ()
{
int x=1,y=1;
while (x<15) y++,x+=++y;
cout<<x<<endl;
cout<<y<<endl;
}
我把程序修改了以下,不加括号输出结果也是16,7呀?你试试看


勤奋造就未来
2007-10-03 19:48
csmenglei951
Rank: 1
等 级:新手上路
威 望:1
帖 子:77
专家分:0
注 册:2007-9-30
收藏
得分:0 

你那程序怎么会执行出结果来,明显的死循环.while没加括号,只能对下面一行起作用

2007-10-03 20:35
xbw0114
Rank: 1
等 级:新手上路
帖 子:141
专家分:0
注 册:2007-8-8
收藏
得分:0 
y++,x+=++y;他们之间是逗号,不是分号,应该是1句
不信你可以运行一下试试
我还想问下为什么输出的结果是16,7而不是9,5 

[此贴子已经被作者于2007-10-3 20:43:22编辑过]


勤奋造就未来
2007-10-03 20:38
xbw0114
Rank: 1
等 级:新手上路
帖 子:141
专家分:0
注 册:2007-8-8
收藏
得分:0 
有人知道不?

勤奋造就未来
2007-10-03 22:21
jbwang
Rank: 1
等 级:新手上路
帖 子:64
专家分:0
注 册:2007-5-22
收藏
得分:0 
while(x<15)
{
y++;
x+=++y;
}
加括号后输出结果是16,7。
2007-10-03 22:52
xbw0114
Rank: 1
等 级:新手上路
帖 子:141
专家分:0
注 册:2007-8-8
收藏
得分:0 

勤奋造就未来
2007-10-04 00:15
etherli
Rank: 1
等 级:新手上路
帖 子:16
专家分:0
注 册:2007-9-14
收藏
得分:0 

输出的结果当然是16和7了
y++,x+=++y; //y自增两次,最后把y自增的值和x的值相加再赋给X

还有个人觉得逗号运算符没什么大的用处

2007-10-04 13:03
DieHeart
Rank: 1
等 级:新手上路
帖 子:52
专家分:0
注 册:2007-10-4
收藏
得分:0 
我不信你的编译器不能单步运行。自己试一下比较好
int x=1,y=1;
while (x<15) y++,x+=++y;

y;x变化情况
1;1
2,3;4
4,5;9
6,7;16
2007-10-05 13:19
jack_sqh
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2007-10-9
收藏
得分:0 
y y x
2 3 4
4 5 9
6 7 16

2007-10-10 16:31
快速回复:[求助]while问题
数据加载中...
 
   



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

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