1、 姓名:name 性别:sex 学生的学号是:num 数学:x 语文:y 英语:z 总分:AAnext; delete stu; stu=p; stu=0; void sadd(); /添加 void sremove(); /删除 void samend(); /修改 void ssearch(); /查询 void staxis(); /排序 void ssave(); /保存 void display_chinese(); /均分 及格率/排序函数 void pxh();void psx();void pyw();void pyy();void pAA(); private: studen
2、t *stu; /头接点 void cla:sadd()/添加 int e=1;student *q;string name1;string sex1;long num1;int x1,y1,z1;system(cls);coutname1;do性别(男,女): cinsex1; if(sex1!=男&sex1!女) coutnext=0;AA=x1+y1+z1;if(stu) student *t;t=stu;if(t-num=num1) 学号已存在,请重新输入return; while(t-next) t=t-t-next=q;else stu=q;输入完毕sremove()/删除 int
3、 num1;n* 删除学生信息 *n;请输入想要删除学生的学号:/查找要删除的结点 student *p1,*p2;p1=stu;while(p1) if(p1-break;p2=p1;p1=p1-/删除结点 if(p1!=NULL)/若找到结点,则删除 p1-play();确定删除吗?Y/Nchar c;c;if(toupper(c)!=Y) return;if(p1=stu) /若要删除的结点是第一个结点 stu=p1-delete p1;else /若要删除的结点是后续结点 p2-next=p1-找到学号为num1sexxyz;AA=p1-x+p1-y+p1-修改成功else /未找到接
4、点 未找到!ssearch()/查询 n* 查询学生信息 *n请输入查询方式:1.按学号查询2.按姓名查询3.返回switch (c) case 1要查询的学号:/查找要查询的结点 学号是:的学生的信息:查询完毕2要查询的学生姓名:name=name1) name1 n+; p1=p1-共有n条信息int i;for(i=1;inumnext-num) / 如果头结点大于第二个的 p2=p1-next=p1; /头结点交换 stu=p2;next) /中间的交换 num) p1=p2- /交换 do p1- p1=p1- while(p1);psx()/按数学成绩排序 p1=stu;x) / 如果头结点大于第二个的 p2=p1-next