//学籍管理系统 #include
#include
class student {
protected: int number; char name[20]; char sex[6]; char place[20]; char birth[20];
char party[10];
public: student *next; student(){ } ~student(){ } char* getname(){ return name; } int getnumber(){ return number;}
void input() {
int e=1;
cout<<\请按提示输入:\ cout<<\输入学号: \ cin>>number;
cout<<\输入姓名: \ cin>>name; do
{
cout<<\输入性别: \ cin>>sex;
if(strcmp(sex,\ {
cout<<\输入生日: \ cin>>birth;
cout<<\输入政治面貌: \ cin>>party;
cout<<\输入家庭住址: \
cin>>place;
e=0; }
else {
cout<<\请重新输入!\ e=1; }
}while(e); return ; }
void output() {
cout<<\学生基本信息如下:\ cout<<\学号:\ <<\ 姓名:\ <<\ 性别:\ <<\ 生日:\
<<\ 政治面貌:\
<<\ 家庭住址:\}
void output(ofstream & os) {
os< < class school { public: school(){ head=new student; head->next=NULL; key=0; } ~school(){ delete head; } void input(); void mend(); void del(); int find(student **p,int num,char *pn=\void found(); void show(); void save(); void begin(); void clear(); char mainmenu(); int getkey(){ return key;} void setkey(int k){ key=k; } //**: student *head; int key; }; //录入函数 void school::input() { student *p1,*p2=NULL; p1=head; int n; while(p1->next) p1=p1->next; while(n) { p2=new student; p2->input(); p1->next=p2; p2->next=NULL; p1=p1->next; school::setkey(1); cout<<\按1继续,按0返回 : \ cin>>n; } } //子查找函数 int school::find(student **p1,int num,char *pn) { student *p; p=head; while(p->next) { (*p1)=p; if( (p->next)->getnumber()==num||!strcmp( (p->next)->getname(),pn ) ) return 1; p=p->next; } return 0; } //查找函数 void school::found() { student *p; int num=-1,n=9; char name[20]=\do { cout<<\按学号查找,2:按姓名查找: \ cin>>n; }while(n<1||n>2); if(n==1) { cout<<\输入学号: \ cin>>num; } if(n==2) { cout<<\输入姓名: \ cin>>name; } if(!find(&p,num,name) ) { cout<<\找不到你要查找的内容!\ return; } (p->next)->output(); } //删除函数 void school::del() { student *p,*p2; int num; cout<<\输入学号: \cin>>num; if( !find(&p,num,\ { cout<<\找不到你要删除的内容!\ return; } (p->next)->output(); p2=p->next; p->next=p2->next; delete p2;
相关推荐: