首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

小弟我写的一段小代码有点不懂

2012-04-16 
我写的一段小代码有点不懂#includeiostreamusing namespace stdint main(){int sum0,iwhile(cini)s

我写的一段小代码有点不懂
#include<iostream>
using namespace std;
int main()
{
int sum=0,i;
while(cin>>i)
sum=sum+i;
cout<<"the sum is :"<<sum<<endl;
return 0;
}
谁能帮我解释一下呢,看书上的看不懂

[解决办法]
输入一些数求和,直到按ctrl + z退出
你这程序有问题啊,按ctrl + z退出又看不到输出的和
[解决办法]
C++ Primer 上的吧

看着很面熟
[解决办法]
#include<iostream>
using namespace std;
int main()
{
int sum=0,i;//变量声明
while(cin>>i)//循环输入
sum=sum+i;//和数递增
cout<<"the sum is :"<<sum<<endl;//退出循环时,输出和数
return 0;
}

[解决办法]

探讨
#include<iostream>
using namespace std;
int main()
{
int sum=0,i;//变量声明
while(cin>>i)//循环输入
sum=sum+i;//和数递增
cout<<"the sum is :"<<sum<<endl;//退出循环时,输出和数
return 0;
}

[解决办法]
#include<iostream>
using namespace std;
int main()
{
int sum=0,i; //建议初始化i 
while(cin>>i) //从键盘输入数值类形数据 输入字符则跳出循环(遇错或遇到文件尾时读取结束)可以有以下形式输入 1 2 3 + 回车 或者 1 + 回车 程序会先将 i 初始化,然后与Sum相加 ,接着继续将2赋值给i,相加,继续赋值 这时候程序不会结束,需要你输入Ctrl+z 加回车结束 (至于为什么可以搜下这篇文章《C++关于while(cin)-缓冲相关》)用来跳出当前的while循环
sum=sum+i;
cout<<"the sum is :"<<sum<<endl;
return 0;
}
[解决办法]
5楼说得比较清楚了 在windows环境下 采用的阻塞式检查方式。所以使用ctrl+z来作为流结束的标志。来跳出当前的while循环。 4楼说的 如果定义成char型 那么数字和字符都将无法结束当前while循环。

热点排行