一个简单问题
我是刚开始,准备系统学下c++
现在在看《essential c++》
课后题1.6
撰写一个程序,从标准输入装置读取一串数字,并将读入的数字依次置入array和vector中,然后遍历他们,求这些数字的和 和 平均数,并输出
我就基本照书敲的
vector的
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> myVet;
int number;
while (cin>>number)
{
myVet.push_back(number);
}
int sum=0,average;
for (int i=0;i<myVet.size();i++)
{
sum+=myVet[i];
}
average=sum/myVet.size();
cout<<"sum="<<sum<<endl<<"average="<<average<<endl;
return 0;
}
array的
#include <iostream>
using namespace std;
int main()
{
const int array_size=128;
int myArray[array_size];
int counter=0,inputNum;
while (cin>>inputNum&&counter<array_size)
{
myArray[counter]=inputNum;
counter++;
}
int sum,average;
for (int i;i<counter;i++)
{
sum+=myArray[i];
}
average=sum/counter;
cout<<sum<<" "<<average<<endl;
return 0;
}
问题是这样的!
vector的,我运行之,挨个输入数字,然后当我输入一个字母的时候,程序停止运行,输出和 和平均数;
array的,我运行之,挨个输入数字,然后当我输入一个字母的时候,程序就提示说,1_6.exe遇到问题需要关闭。可以选择“调试”或“关闭”!
另外,
我还在vector的程序里多加了几行代码
if (number=10)
{
break;
}
else
我本意是想,如果是我输入10,就让程序停止掉!但是错误的,运行时候,同样出现了说1_6.exe遇到问题需要关闭。可以选择“调试”或“关闭”!
我也知道问题比较弱,但还是希望有人可以回答我一下!
谢谢了!