用c++实现学生信息管理系统

#include
#include
#include<string.h>

using namespace std;
#define MAXSIZE 20

class aclass;
class student
{
private:
long no;
char name[10];
float score;
public:
student();
friend class aclass;//友元内的定义,aclass 中的成员函数均有资格访问student的数据成员,反之不可。

};
class aclass
{
private:
char cname[10];
student data[MAXSIZE];
int last;
public:
aclass();
int insert_seqlist(int i,student x);
int delete_seqlist(int i);
void print_seqlist();

};

void menu();

int main()
{
aclass sq;
int n,m=1;
while(m)
{
menu();
cin>>n;
switch(n)
{
case 1:
{
int i;
student x;
cout<<“请输入位置”<<endl;
cin>>i;
sq.insert_seqlist(i,x);

            break;
        }
    case 2:
        {
            int i;
            cout<<"请输入删除的位置:";
            cin>>i;
            sq.delete_seqlist(i);
            cout<<endl<<"删除后信息:"<<endl<<endl;
            break;

        }

    case 0:m=0;
}

}

return 0;

}

void menu()
{
cout<<endl<<“1.插入”<<endl;
cout<<“2.删除”<<endl;
cout<<“0.退出”<<endl;
cout<<endl<<“请选择:”;

}

student::student()
{
no=0;
strcpy(name,"");
score=0;

}

aclass::aclass()
{
cout<<“请输入班级名称”<<endl;
cin>>cname;
last=-1;
}

int aclass::insert_seqlist(int i,student x)
{

int j;
if(last==MAXSIZE-1)
{
    cout<<"table is full!"<<endl;
    return(-1);
}
if(i<1||i>(last+2))
{
    cout<<"位置错误"<<endl;
    return(0);
}

cout<<"请输入学生(学号、姓名、成绩);"<<endl;
cin>>x.no>>x.name>>x.score;

for(j=last;j>=i-1;j--)
{
    data[j+1]=data[j];
}
data[i-1]=x;
last++;
cout<<endl<<"插入后信息:"<<endl<<endl;
print_seqlist();
return(1);

}

int aclass::delete_seqlist(int i)
{
int j;
if(i<1||i>(last+1))
{
cout<<“位置错误!”<<endl;
return(0);
}
for(j=i;j<=last;j++)
{
data[j-1]=data[j];
}
last–;
return(1);

}
void aclass::print_seqlist()
{
int i;
cout<<“班级”<<cname<<endl;
cout<<“学生”<<endl;
for(i=0;i<=last;i++)
{
cout<<data[i].no<<setw(8)<<data[i].name<<setw(4)<<data[i].score<<endl;
}
cout<<endl;
}

猜你喜欢

转载自blog.csdn.net/cruel2436/article/details/82808240