读入一组成绩值,成绩取值在0~100,以10分作为一个分数段,统计各个分数段上各有多少个成绩,用迭代器实现
//3.25
#include <iostream>
#include <string>
#include <vector>
using namespace std;
int main()
{
vector<int> grade(10,0);//vector对象grade中存入各区间段分数个数的初始值:都为0个
int number;
while (cin >> number) //不断输入分数,以ctrl+Z作为结束
{
if (number > 100)
{
cout<<"The inupt number is wrong"<<endl;
break;
}//超过100报错
auto it = grade.begin(); //迭代器指向区间段第一个元素即0~10区间
int n = number/10; //判断分数所属的区间等级
it = it + n; //找到分数对应的区间变量
++(*it); //对当前区间变量执行加1操作
}
for(int i = 0; i<10; i++)
{
cout << i*10 << "~" << i*10+10 << " ";
cout << grade[i] << endl; //输出分数的区间等级及相应区间变量值
}
system("pause");
return 0;
}