#include<iostream>
#include<string>
#include<fstream>
using namespace std;
class Class
{
public:
int num,totalhours,classhours,practicalhours,score;
string name,character,term;
void set()
{
cout<<"-------信息录入-------"<<endl<<endl;
cout<<"输入课程编号:";
cin>>num;
cout<<"输入课程名称:";
cin>>name;
cout<<"输入课程属性:";
cin>>character;
cout<<"输入学时:";
cin>>classhours;
cout<<"输入上机学时:";
cin>>practicalhours;
cout<<"输入总学时:";
cin>>totalhours;
cout<<"输入学分:";
cin>>score;
cout<<"输入学期:";
cin>>term;
}
void display()
{
cout<<num<<"\t"<<name<<"\t"<<character<<"\t"<<classhours<<"\t"<<practicalhours<<"\t"<<totalhours<<"\t"<<score<<"\t"<<term<<endl;
}
};
void all()
{
cout<<"-------"<<"学生选修课系统"<<"-------"<<endl;
cout<<"1. 课程信息录入"<<endl;
cout<<"2. 课程信息浏览"<<endl;
cout<<"3. 课程信息查询"<<endl;
cout<<"4. 学生选修课程"<<endl<<endl<<endl;
cout<<"请选择..."<<endl;
cout<<" 输入s退出"<<endl;
}
class Student
{
private:
string name;
int num;
string sex;
public:
Student(){name="张三";num=123456;sex="男";}
void show()
{
cout<<"姓名:"<<name<<"\n"<<"学号:"<<num<<"\n"<<"性别:"<<sex<<endl<<endl;
}
};
int main()
{
Class c[100],aa[2],qq[100];
Student s1;
int i;
look:all();
cin>>i;
if(i==1)
{ int a;
{
for(int d=0;d<100;d++)
{
while(a!=1)
{
c[d].set();
cout<<"输入1返回目录,其他键继续录入";
cin>>a;
}
}
}
goto look;
}
else if(i==2)
{
cout<<"-------信息查询-------"<<endl<<endl;
cout<<"编号"<<"\t"<<"名称"<<"\t"<<"课程属性"<<"\t"<<"学时"<<"\t"<<"上机学时"<<"\t"<<"总学时"<<"\t"<<"学分"<<"\t"<<"学期"<<"\t"<<endl;
for(int d=0;d<100;d++)
{
c[d].display();
cout<<"输入1返回";
int a;
cin>>a;
if(a==1)
goto look;
}
}
else if(i==3)
{
cout<<"输入1按学分查询,输入2按课程性质查询"<<endl;
int a;
cin>>a;
if(a==1)
{
for(int j=0;j<99;j++)
{for(int d=0;d<99-j;d++)
if(c[d].score>c[d+1].score)
{ aa[1]=c[d];
c[d]=c[d+1];
c[d+1]=aa[1];
}
}
for(int d=0;d<100;d++)
{
c[d].display();
cout<<"输入1返回目录";
int b;
cin>>b;
if(b==1)
goto look;
}
}
if(a==2)
{
for(int j=0;j<99;j++)
{ for(int d=0;d<99-j;d++)
if(c[d].character!=c[d+1].character)
{ aa[2]=c[d];
c[d]=c[d+1];
c[d+1]=aa[2];
}
}
for(int d=0;d<100;d++)
{
c[d].display();
cout<<"输入1返回目录";
int b;
cin>>b;
if(b==1)
goto look;
}
}
}
else if(i==4)
{
int z=0,sum=0;
s1.show();
cout<<"可选课程:"<<endl;
for(int d=0;d<100;d++)
{
c[d].display();
}
cout<<"请选择编号:"<<endl;
while(sum<20)
{
int q;
cin>>q;
for(int d=0;d<100;d++)
{
for(int z1=0;z1<100;z1++)
{
if(q!=c[z1].num)
{
if(q=c[d].num)
{
c[d]=qq[z];
sum+=qq[z].score;
z++;
}
}
}
}
cout<<"已选课程:"<<endl;
for(int t=0;t<100;t++)
{
qq[t].display();
}
}
}
else if(i==0)
{ }
else
{cout<<"错误,请重新选择"<<endl;
goto look;}
return 0;
}
我跑了你的代码,看上去没有啥问题啊