学生成绩管理系统源代码.doc
《学生成绩管理系统源代码.doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统源代码.doc(15页珍藏版)》请在三一办公上搜索。
1、#include #include #include #include struct student /结构体定义int num; char name10;char birthday10;int Cyuyan; int shujujiegou;struct student *next; struct student *creat_by_input();struct student *get_last_student(struct student *head);struct student *Print_menu_main() /主菜单printf( *n);printf( | 1.输入学生信息
2、 | n); printf( | 2.输出学生信息 | n); printf( | 3.查找学生信息 | n); printf( | 4.修改学生信息 | n); printf( | 5.插入学生信息 | n); printf( | 6.删除学生信息 | n); printf( | 7.排序学生信息 | n); printf( | 0.退出系统 | n); printf( |_ _ _ _ _ _ _ _ _ _ _ _ _ | n);struct student *print_table_head() printf(+-+-+-+-+-+n); printf(| 学号 | 姓名 | 出生日期
3、 | c成绩 |数据结构成绩 |n); printf(+-+-+-+-+-+n);struct student *print_table_row(struct student *p)printf(|%10d|%10s|%10s|%10d|%10d|n,p-num,p-name,p-birthday,p-Cyuyan,p-shujujiegou);void print_table_bottom()printf(+-+-+-+-+-+n);struct student * Creat_stu_record() /建立链表struct student *plaststu=NULL,*pnewstu;
4、char continue_input=N; struct student *head=NULL;while(1)if(head=NULL)head=creat_by_input();print_table_head();print_table_row(head);print_table_bottom();else pnewstu=creat_by_input();print_table_head();print_table_row(pnewstu);print_table_bottom();plaststu=get_last_student(head);plaststu-next=pnews
5、tu;printf(是否继续输入学生信息?(Y 继续,N 返回菜单)n);getchar();continue_input=getchar();if(continue_input=n|continue_input=N) system(cls);Print_menu_main();break;return head;struct student *creat_by_input() struct student *pnewstu=(struct student *)malloc(sizeof(struct student);printf(请输入学生信息n); printf(学号:);scanf(%
6、d,&pnewstu-num); printf(姓名:);scanf(%s,pnewstu-name); printf(出生年月:);scanf(%s,pnewstu-birthday);printf(请输入学生成绩n);printf(C语言:);scanf(%d,&(pnewstu-Cyuyan);printf(数据结构:);scanf(%d,&(pnewstu-shujujiegou); pnewstu-next=NULL; return pnewstu;struct student *get_last_student(struct student *p ) if(p-next=NULL)
7、return p;else return get_last_student(p-next);void Print_Stu_Doc(struct student *head)struct student *p;char r;print_table_head();if(head=NULL)printf(n No Recordsn);for(p=head;p;p=p-next)printf(|%10d|%10s|%10s|%10d|%10d|n,p-num,p-name,p-birthday,p-Cyuyan,p-shujujiegou);printf(+-+-+-+-+-+n);printf(按E
8、nter键返回主菜单)n);getchar();r=getchar();if(r!=1)system(cls);Print_menu_main();elsesystem(cls);Print_menu_main();struct student *search_by_name(struct student *head)/按姓名查找char name10;struct student *p=head;char continue_input;/*int isfound=0;*/printf(请输入要查找的姓名:);scanf(%s,name);printf(查找%sn,name);print_ta
9、ble_head();while(p!=NULL) if(strcmp(p-name,name)=0) print_table_row(p);p=p-next;/*isfound=1; */break;p=p-next;print_table_bottom();printf(是否继续查找?(Y 继续;N 返回主菜单)n);getchar();continue_input=getchar();if(continue_input=n|continue_input=N)system(cls);Print_menu_main();else search_by_name(head);struct stu
10、dent * search_by_id(struct student *head)/按学号查找int id;struct student *p=head;char continue_input;/*int isfound=0;*/printf(请输入要查找的学号:);scanf(%d,&id);printf(查找%dn,id);print_table_head();while(p!=NULL) if(p-num=id) print_table_row(p);p=p-next;/*isfound=1;*/break;p=p-next;print_table_bottom();printf(是否继
11、续查找?(Y 继续;N 返回主菜单)n);getchar();continue_input=getchar();if(continue_input=n|continue_input=N)system(cls);Print_menu_main();else search_by_id(head);return head; struct student*modify_record_by_id(struct student*head)/按学号修改struct student *p=head;int id;char continue_input;printf(请输入要修改的学生的学号:n);scanf(
12、%d,&id);while(p!=NULL)if(p-num=id)break;p=p-next;if(p=NULL) printf(抱歉,没有学号为%d的学生n,id);else printf(请输入学生信息:n); printf(学号:);scanf(%d,&(p-num); printf(姓名:);scanf(%s,&(p-name); printf(出生年月:);scanf(%s,&(p-birthday);printf(请输入学生成绩:n);printf(C语言:);scanf(%d,&(p-Cyuyan);printf(数据结构:);scanf(%d,&(p-shujujiegou
13、);print_table_head();print_table_row(p);print_table_bottom();printf(继续修改学生信息吗?Y 继续;N 返回主菜单n);getchar();continue_input=getchar();if(continue_input=y|continue_input=Y)creat_by_input();else system(cls);Print_menu_main();return head;struct student*modify_record_by_name(struct student*head)/按姓名修改struct s
14、tudent*p=head;char name10;char continue_input;printf(请输入要修改的学生的姓名:n);scanf(%s,name);while(p!=NULL)if(strcmp(p-name,name)=0) break;p=p-next;if(p=NULL) printf(抱歉,没有姓名为%s的学生n,name);else printf(请输入学生信息:n); printf(学号:);scanf(%d,&(p-num); printf(姓名:);scanf(%s,&(p-name); printf(出生年月:);scanf(%s,&(p-birthday
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 学生 成绩管理系统 源代码

链接地址:https://www.31ppt.com/p-2388240.html