#include
#include
#include
#include
using namespace std;
class student
{
public:
student(string names,string num)
{
name=names;
number=num;
};
student() //定义一个默认构造函数
{};
void print();
string getnumber()
{
return number;
};
void grades(int a[]);
private:
float grade[5];
string name;
string number;
};
void student::print()
{
cout<<"姓名"<<'\t'<<"学号"<<'\t'<<"成绩"<
void student::grades(int a[])
{
for(int i=0;i<4;i++)
grade[i]=a[i];
grade[5]=grade[0]*0.5+grade[1]*0.25+(grade[2]+grade[3])*0.125;
}
int main()
{
vector
char ans;
do{
student next;
string tpn,tpu;
int grade[4];
cout<<"输入该同学的姓名,确保你输入的姓名有意义且不要用中文,鉴于程序的体积,它不会帮助你进行"<
<<"有效性的检查果你输入错误,它可能直接终止运行,后果会很严重"<
getline(cin,tpn);
cout<<"输入该同学的学号(可以用0打头),确保你输入的学号有意义并且不重复,鉴于程序的体积,它不会帮助你进行"<
getline(cin,tpu);
next=student(tpn,tpu);
cout<<"请按顺序输入该同学期末,期中考试和两次测验的成绩(用空格隔开),确保你输入的成绩是严格按照顺序的并且"<
for(int i=0;i<4;i++)
cin>>grade[i];
next.grades(grade);
students.push_back(next);
cout<<"你要结束输入吗?y or n "<
cin>>ans;
}while(ans=='y'||ans=='Y');
cout<<"你想查看某学生的信息吗?n or y?"<
char an;
cin>>an;
if(an=='y'||an=='Y')
cout<<"输入你要查询的学生的学号(不要留下空格),确保它是正确的,存在的,鉴于程序的体积"<
do
{
char ans;
string input;
getline(cin,input);
for(int i=0;i
if(input==students[i].getnumber())
students[i].print();//这里应该是一个公有函数
cout<<"糟糕你输错了,我说了,会很严重"<
exit(1);
cout<<"要继续吗y or n"<
cin>>ans;
}while(ans=='y'||ans=='Y');
return 0;
}
程序语法错误我帮你修改好了楼主,不过我没有看你是做什么的,有事HI我吧