资源描述:
《学生管理系统源代码.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、学生管理系统源代码#include#include#include#include#defineLENsizeof(structscorenode)#defineDEBUGstructscorenode{intnumber;/*学号*/charname[10];/*姓名*/floatyuwen;/*语文成绩*/floatyingyu;/*英语成绩*/floatshuxue;/*数学成绩*/structscorenode*next;};typedefstructscoreno
2、descore;intn,k;/*n,k为全局变量,本程序中的函数均可以使用它*/score*creat(void)/*函数creat,功能:创建链表,此函数带回一个指向链表头的指针*/{score*head;score*p1,*p2,*p3,*max;inti,j;floatfen;chart[10];n=0;p1=p2=p3=(score*)malloc(LEN);head=p3;/*开辟一个新单元*/printf("请输入学生资料,输0退出!");repeat1:printf("请输入学生学号(学号应大于0):");/*输入学号,学号应大于
3、0*/scanf("%d",&p1->number);while(p1->number<0){getchar();printf("输入错误,请重新输入学生学号:");scanf("%d",&p1->number);}/*输入学号为字符或小于0时,程序报错,提示重新输入学号*/if(p1->number==0)gotoend;/*当输入的学号为0时,转到末尾,结束创建链表*/else{p3=head;if(n>0){for(i=0;inumber!=p3->number)p3=p3->next;else{printf("学
4、号重复,请重输!");gotorepeat1;/*当输入的学号已经存在,程序报错,返回前面重新输入*/}}}}printf("请输入学生姓名:");scanf("%s",&p1->name);/*输入学生姓名*/printf("请输入语文成绩(0~100):");/*输入语文成绩,成绩应在0-100*/scanf("%f",&p1->yuwen);while(p1->yuwen<0
5、
6、p1->yuwen>100){getchar();printf("输入错误,请重新输入语文成绩");/*输入错误,重新输入语文成绩直到正确为止*/scanf("%f
7、",&p1->yuwen);}printf("请输入英语成绩(0~100):");/*输入英语成绩,成绩应在0-100*/scanf("%f",&p1->yingyu);while(p1->yingyu<0
8、
9、p1->yingyu>100){getchar();printf("输入错误,请重新输入英语成绩");/*输入错误,重新输入英语成绩直到正确为止*/scanf("%f",&p1->yingyu);}printf("请输入数学成绩(0~100):");/*输入数学成绩,成绩应在0-100*/scanf("%f",&p1->shuxue);whil
10、e(p1->shuxue<0
11、
12、p1->shuxue>100){getchar();printf("输入错误,请重新输入数学成绩");scanf("%f",&p1->shuxue);}/*输入错误,重新输入数学成绩直到正确为止*/head=NULL;while(p1->number!=0){n=n+1;if(n==1)head=p1;elsep2->next=p1;p2=p1;p1=(score*)malloc(LEN);printf("请输入学生资料,输0退出!");repeat2:printf("请输入学生学号(学号应大于0):");scan
13、f("%d",&p1->number);/*输入学号,学号应大于0*/while(p1->number<0){getchar();printf("输入错误,请重新输入学生学号:");scanf("%d",&p1->number);}/*输入学号为字符或小于0时,程序报错,提示重新输入学号*/if(p1->number==0)gotoend;/*当输入的学号为0时,转到末尾,结束创建链表*/else{p3=head;if(n>0){for(i=0;inumber!=p3->number)p3=p3->next;else{p
14、rintf("学号重复,请重输!");gotorepeat2;/*当输入的学号已经存在,程序报错,返回前