我要做的问题如下。
编写一个程序,输出学生作业成绩的直方图。程序应将每个学生的成绩作为整数输入并存储在向量中。应输入成绩,直到用户输入 -1 作为成绩。然后程序应该扫描向量并计算直方图,一个等级的最小值是 0,但你的程序应该确定用户输入的最大值。使用动态数组来存储直方图。将直方图输出到控制台。
添加示例:输入 20 30 4 20 30 30 -1 输出 4 的数量:1 20 的数量:2 30 的数量:3
到目前为止,我编写的代码如下:
#include <iostream>
#include <vector>
using namespace std;
void histogram(vector<int> input);
int main()
{
int i=0;
int value;
vector<int> grades;
while(i>=0)
{
cout<<"Enter a grade for the student: ";
cin>>value;
grades.push_back(value);
if((grades[i])==(-1))
{
break;
}
i++;
}
histogram(grades);
}
void histogram(vector<int> input)
{
}
我确实为直方图函数尝试了一些东西,但它以可怕的方式失败了。我不知道如何处理这个直方图。