学生信息管理系统

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C语言程序设计课程设计任务书一、设计题目学生信息管理系统(难度系数★★★)二、设计主要内容主要内容:该系统通过结构体数组或链表实现了对学生信息的批量录入、浏览、修改、删除、添加和查询功能。具体要求如下:学生信息包括:学号、姓名、性别、出生年月、地址、电话,试设计学生信息管理系统,使之能提供以下功能:(1)基本功能:①系统以文字菜单方式工作:提供一个字符主菜单使用户可以选择不同的字符来实现系统的各个功能,各个功能实现后又能够返回到主菜单。②批量录入功能:在录入的过程中,通过询问用户是否继续录入的方法来录入多个学生的信息。③浏览功能:按一定的格式显示所有学生信息。④修改功能:输入要修改的学号,先对该学号进行查询,如果查询成功,则可以根据提示对该学生每项信息进行修改,如果查询不成功,则显示相应的提示信息。⑤删除功能:输入要删除的学号,先对该学号进行查询,如果查询成功,则删除该学生的所有信息,如果查询不成功,则显示相应的提示信息。⑥添加功能:输入要添加的学号,先对该学号进行查询,如果查询成功,则提示输入的学号已存在的信息,并要求能够重新输入,如果查询不成功,则输入该学生的其他信息,从而完成一个学生信息的录入。⑦查询功能:能够分别按输入的学号和姓名查询学生信息,如果查询成功,则按一定的格式显示查询结果,如果查询不成功,则显示相应的提示信息。(2)扩展功能:①保存功能:首先提示用户输入保存的文件名,将结构体数组或链表中的学生信息保存在指定的文件中。②顺序浏览:按照学号的顺序显示所有学生信息。三、原始资料[1]作者.书名.出版地:出版社,2008四、要求的设计成果(1)实现该系统功能的程序代码(2)撰写符合规范要求的课程设计报告五、进程安排序号课程设计内容学时分配备注1选题与搜集资料1天2分析与设计1天3模块实现4天4系统调试与测试2天5撰写课程设计报告2天合计10天六、主要参考资料[1]梁旭,谷晓琳,黄明.C语言课程设计.第2版.北京:电子工业出版社,2009.[2]王新.C语言课程设计.北京:清华大学出版社,2009.[3]谭浩强.C语言程序设计.北京:清华大学出版社,2011.指导教师(签名):20年月日目录1系统需求分析………………………………………………………………………………11.1系统概述………………………………………………………………………………11.2系统功能分析…………………………………………………………………………12系统结构设计………………………………………………………………………………22.1系统结构图……………………………………………………………………………22.2函数详细说明…………………………………………………………………………33系统实现……………………………………………………………………………………44系统测试……………………………………………………………………………………14结论……………………………………………………………………………………………1811系统需求分析1.1系统概述学生信息是学校管理中一项繁琐的工作。纸质的学生信息登记表已经不能满足我们的要求,更新麻烦,查询困难等缺点是纸质信息登记表所不能克服的。在此情况下,迫切需要一个电子版的学生管理系统来满足我们的需求,对学生信息进行必要的管理,能够使管理人员、班主任和任课教师对记录查询更加方便。考虑到要对学生信息进行快速检索,所以采用结构体数组实现学生信息管理系统。要求实现插入、查找、删除、修改、保存等基本功能,人机界面友好,使用文字化界面。为此,设计一套实用的学生信息管理系统就可以大大简化管理人员、班主任和任课教师的工作,方便学生查询自己的学习情况。1.2系统功能分析①系统以文字菜单方式工作:提供一个字符主菜单使用户可以选择不同的字符来实现系统的各个功能,各个功能实现后又能够返回到主菜单。②批量录入功能:在录入的过程中,通过询问用户是否继续录入的方法来录入多个学生的信息。③浏览功能:按一定的格式显示所有学生信息。④修改功能:输入要修改的学号,先对该学号进行查询,如果查询成功,则可以根据提示对该学生每项信息进行修改,如果查询不成功,则显示相应的提示信息。⑤删除功能:输入要删除的学号,先对该学号进行查询,如果查询成功,则删除该学生的所有信息,如果查询不成功,则显示相应的提示信息。⑥添加功能:输入要添加的学号,先对该学号进行查询,如果查询成功,则提示输入的学号已存在的信息,并要求能够重新输入,如果查询不成功,则输入该学生的其他信息,从而完成一个学生信息的录入。⑦查询功能:能够分别按输入的学号和姓名查询学生信息,如果查询成功,则按一定的格式显示查询结果,如果查询不成功,则显示相应的提示信息。(2)扩展功能:①保存功能:首先提示用户输入保存的文件名,将结构体数组或链表中的学生信息保存在指定的文件中。②顺序浏览:按照学号的顺序显示所有学生信息。22系统结构设计2.1系统结构图开始主菜单浏览修改地址录入修改删除添加查询退出继续录入查询修改出生年月修改姓名修改电话号码修改性别修改学号继续添加主菜单结束保存32.2函数详细说明1.主函数:调用桌面函数。2.桌面函数:调用每个功能函数,实现浏览,录入,修改,删除,添加,查询,学生信息的功能。3.浏览函数:调用读取函数,排序函数和表格函数。4.录入函数:批量录入学生信息。5.查询函数:按输入的学号或姓名查询学生信息,如果查询成功,则按一定的格式显示查询结果,如果查询不成功,则显示相应的提示信息。6.排序函数:将输入数组中的学生信息按学号排序。7.表格函数:将学生信息以表格形式输出。8.修改函数:输入要修改的学号,先对该学号进行查询,如果查询成功,则可以根据提示对该学生每项信息进行修改,如果查询不成功,则显示相应的提示信息。9.删除函数:输入要删除的学号,先对该学号进行查询,如果查询成功,则删除该学生的所有信息,如果查询不成功,则显示相应的提示信息。10.添加函数:输入要添加的学号,先对该学号进行查询,如果查询成功,则提示输入的学号已存在的信息,并要求能够重新输入,如果查询不成功,则输入该学生的其他信息,从而完成一个学生信息的录入。11.保存函数:将结构体数组中的学生信息保存在指定的文件中。12.读取函数:查找用户先前保存学生信息的文件,读出先前保存的学生信息。43系统实现3.1预处理#includestdio.h//标准输入/输出函数库#includestdlib.h//标准函数库#includestring.h//字符串处理函数库3.2数据类型定义intn;structstudent{charnum[20];//学号charname[20];//姓名charsex[20];//性别chartime[20];//出生年月charaddress[20];//地址chartel[20];//电话号码}s[100];3.3主函数intmain(){voidindex();//桌面函数声明index();return0;}3.4桌面函数voidindex()//桌面函数{voidoutput();//浏览函数声明voidinput();//录入函数声明voidrevise();//修改函数声明voiddel();//删除函数声明voidadd();//添加函数声明voidsearch();//查询函数声明intx;system(cls);//清屏printf(========================================\n);printf(|学生成绩管理系统\n);printf(+---------------------------------------\n);5printf(|1.浏览学生信息\n);printf(|2.录入学生信息\n);printf(|3.修改学生信息\n);printf(|4.删除学生信息\n);printf(|5.添加学生信息\n);printf(|6.查询学生信息\n);printf(|7.退出\n);printf(+---------------------------------------\n);printf(请选择:);scanf(%d,&x);if(x==1)output();if(x==2)input();if(x==3)revise();if(x==4)del();if(x==5)add();if(x==6)search();if(x==7)exit(0);}3.5浏览函数voidoutput()//浏览函数{voidread();//读取函数声明voidpaixu();//排序函数声明voidexcel();//表格函数声明intx;system(cls);read();paixu();excel();printf(按任意键返回菜单..);getchar();getchar();index();}3.6录入函数voidinput()//录入函数{voidsave();//保存函数声明voidindex();//桌面函数声明inti,x;6n=1;system(cls);printf(请输入学生信息:\n);for(i=0;in;i++){printf(学号:);scanf(%s,&s[i].num);printf(姓名:);scanf(%s,&s[i].name);printf(性别:);scanf(%s,&s[i].sex);printf(出生年月:);scanf(%s,&s[i].time);printf(地址:);scanf(%s,&s[i].address);printf(电话号码:);scanf(%s,&s[i].tel);printf(-------------------------------------\n);printf(1继续输入\n2保存并返回主菜单\n);printf(-------------------------------------\n);printf(请选择:);scanf(%d,&x);if(x==1)n=n+1;if(x==2){save();index();}}}3.7查询函数voidsearch()//查询函数{voidindex();//桌面函数声明inti,x;chara[20];system(cls);printf(请输入要查询的学号或姓名:);scanf(%s,&a);printf(+----------+----------+----------+------------+------------+------------+\n);printf(|学号|姓名|性别|出生年月|地址|电话号码|\n);printf(+----------+----------+----------+------------+------------+------------+\n);for(i=0;in;i++){if(strcmp(a,s[i].num)==0||strcmp(a,s[i].name)==0){printf(|%10s|%10s|%10s|%12s|%12s|%12s|\n,s[i].num,s[i].name,s[i].sex,s[i].time,s[i].address,s[i].tel);7printf(+----------+----------+----------+------------+------------+------------+\n);break;}if(i==n)printf(没有这个学生的纪录\n);}printf(1继续查询\n2返回主菜单\n);printf(请选择:);scanf(%d,&x);if(x==1)search();if(x==2)index();}3.8排序函数voidpaixu()//排序函数{inti,j;chara[20];for(j=0;jn-1;j++){for(i=0;in-j-1;i++)if(s

1 / 22
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功