{
p3=&m;
p1=p3->next; p2=p1->next; while (p2!=p) {
if ((p1 -> sum) < (p2 -> sum) ) {
p1->next=p2->next; p2->next=p1; p3->next=p2; p3=p2;
p2=p1->next; } else {
p3=p1; p1=p2;
p2=p2->next; } }
p=p1; }
while (p->next!=&n) {
p=p->next; }
p->next=NULL; return m.next; }
struct student *outputsortsum()//总分排序输出 { int i=0; struct student *head = NULL , *p = NULL; head = read();
p = sortsum(head); printf(\
*************************STUDENT****************************\\n\ printf(\ ------------------------------------------------------------\\n\ printf(\ | 名次 | 学号 | 姓名 | 数学 | 英语 | C语言 | 总分 |\\n\ printf(\ ------------------------------------------------------------\\n\ while(p != NULL) { i++;
printf(\ | = | %4s | %-4s | = | = | = | = |\\n\
p->name,p->scorem,p->scoree,p->scorec,p->sum); printf(\ ------------------------------------------------------------\\n\ p=p->next; } return head; }
struct student *statistic()//统计函数 { int m = 0; struct student *head=NULL; struct student *p,*q; p = head = read(); while( p != NULL) { m++; p = p -> next; }
printf(\总共有%d个学生信息.\\n\\n\ q= sortsum(head); printf(\分数最高的学生的信息:\\n\ printf(\
***********************STUDENT*************************\\n\ printf(\ -------------------------------------------------------\\n\ printf(\ | 学号 | 姓名 | 数学 | 英语 | C语言 | 总分 |\\n\ printf(\ -------------------------------------------------------\\n\ printf(\ | %4s | %-4s | = | = | = | = |\\n\ q->name, q->scorem,q->scoree,q->scorec,q->sum); printf(\ -------------------------------------------------------\\n\ return head; }
void mima1 () { while(1) { int a=1; int i; char ch[10];
char num[20]={\
printf(\进入管理员成绩管理系统之前请先输入密码\\n\ printf(\请输入您的密码 :\\n\ for(i=0;i<10;i++) { ch[i]=getch(); if(ch[i]==13 ) break; putchar('*'); }
ch[i]='\\0'; if(strcmp(num,ch)==0) a = 0; if(a==0) { printf(\欢迎进入管理员管理系统 !\\n\ getchar(); break; }
else { printf(\这个密码是错误的! \ printf(\请输入正确的密码:\ } } }
void mima2 () { while(1) { int a=1; int i; char ch[10];
char num[20]={\
printf(\进入学生成绩管理系统之前请先输入密码\\n\ printf(\请输入您的密码 :\\n\ for(i=0;i<10;i++) { ch[i]=getch(); if(ch[i]==13 ) break; putchar('*'); }
ch[i]='\\0'; if(strcmp(num,ch)==0) a = 0; if(a==0) { printf(\欢迎进入学生成绩管理系统 !\\n\ getchar(); break; }
else { printf(\这个密码是错误的! \ printf(\请输入正确的密码:\ } }
}
void menu1() { system(\ printf(\ 欢迎进入管理员管理系统!\\n\\n\
printf(\ *******************************主菜单****************************\\n\ printf(\ * 1 添加学生成绩 *\\n\
printf(\ * * 2 查找学生成绩 * *\\n\
printf(\ * * * 3 删除指定学生 * * *\\n\
printf(\ * * * 4 修改学生信息 * * *\\n\
printf(\ * * * 5 总分排序信息 * * *\\n\
printf(\ * * 6 查看全部信息 * *\\n\
printf(\ * 7 统计学生人数 *\\n\ printf(\ * 8 停止程序运行 *\\n\ printf(\
*****************************************************************\\n\}
void menu2() { system(\
printf(\ 欢迎进入学生管理系统!\\n\\n\
printf(\ *******************************主菜单****************************\\n\
printf(\ * * 1 查找学生成绩 * *\\n\
printf(\ * * * 2 总分排序信息 * * *\\n\
printf(\ * * * 3 查看全部信息 * * *\\n\
printf(\ * * * 4 统计学生人数 * * *\\n\ printf(\ * * 5 停止程序运行 * *\\n\ printf(\
*****************************************************************\\n\}
main() {
int a,m; int b = 1; printf(\
******************************************************\ printf(\
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\ printf(\ ★★★★★★★★★★★★★★★★★★★★★★★★★★★\\n\
printf(\ 西安邮电大学\\n\\n\ printf(\ 教务管理系统欢迎您!\\n\\n\
printf(\ 请选择您要进入的管理系统 \\n\\n\ printf(\ 1.管理员管理系统。\\n\\n\ printf(\ 2.学生管理系统。\\n\\n\ printf(\ 3.退出系统!\\n\\n\ printf(\ 请您选择: \
printf(\ ★★★★★★★★★★★★★★★★★★★★★★★★★★★\ printf(\
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$\ printf(\
******************************************************\\n\ scanf(\ if(m==1) { system(\ mima1(); }
if(m==2) { system(\ mima2(); } while (b == 1) { if(m==1) { menu1(); scanf(\ switch(a) { case 1 : input(); break; case 2 : search(); break; case 3 : dele(); break; case 4 : change(); break; case 5 : outputsortsum(); break; case 6 : output(); break; case 7 : statistic(); break;
case 8 : exit(1); default : printf(\输入错误!\\n\ }
printf(\请选择接下来的操作:\\n\
printf(\返回主菜单 2 . 退出程序\\n\ scanf(\ }
if(m==2) { menu2();
scanf(\ switch(a) { case 1 : search(); break; case 2 : outputsortsum(); break; case 3 : output(); break; case 4 : statistic(); break; case 5 : exit(1); default : printf(\输入错误!\\n\ }
printf(\请选择接下来的操作:\\n\
printf(\返回主菜单 2 . 退出程序\\n\ scanf(\ } if(m==3) exit (1); } }