编程小白,请问各位大佬下面这个用c++怎么编,谢谢
已知某班有N名学生,每名学生有学号,姓名和3门课程成绩等信息,统计有不及格课程的学生的人数以及这些学生的信息
程序代码:
#include <iostream>
#include <string>
#include <vector>
using namespace std;
//用于存储学生信息的结构体
struct Student
{
int sNumber;
string sName;
int sProfessionalA;
int sProfessionalB;
int sProfessionalC;
};
//此 >> 的重载实现从控制台直接将数据cin到结构体内
istream & operator >> (istream& in, Student &s){
in
>> s.sNumber
>> s.sName
>> s.sProfessionalA
>> s.sProfessionalB
>> s.sProfessionalC;
return in;
}
int main()
{
//使用vector存储所有学生的结构体,方便统计
vector<Student> v;
//声明结构体变量sd用于临时存放控制台传入的学生信息
Student sd;
int n = 0;
cout << "输入学生信息的数量:" << endl;
cin >> n;
//也可以使用比如:
//cin >> sd.sNumber << sd.sName << sd.sProfessionalA... 的形式
cout << "输入学生信息:" << endl;
while (cin >> sd)
{
v.push_back(sd);
n--;
//信息读完后结束while循环
if (n == 0)
break;
}
int resultA = 0, resultB = 0, resultC = 0;
//遍历不及格的人数
for (Student c : v)
{
if (c.sProfessionalA < 60)
resultA++;
if (c.sProfessionalB < 60)
resultB++;
if (c.sProfessionalC < 60)
resultC++;
}
cout
<< "ProfessionalA 不及格人数为:" << resultA << endl
<< "ProfessionalB 不及格人数为:" << resultB << endl
<< "ProfessionalC 不及格人数为:" << resultC << endl;
system("pause");
return 0;
}
[此贴子已经被作者于2018-11-30 19:05编辑过]