c语言学生证管理系统课程设计报告.doc
《c语言学生证管理系统课程设计报告.doc》由会员分享,可在线阅读,更多相关《c语言学生证管理系统课程设计报告.doc(30页珍藏版)》请在三一文库上搜索。
1、红河学院工学院课程设计报告专业: 年级: 姓名:成绩:批改时间:红河学院 工学院编制说 明1、本报告供学生课程设计时使用。2、学生应认真阅读课程设计要求。3、课程设计报告里面的内容要手工填写,以备存档使用(源程序可打印)。4、课程设计的总评成绩根据课程的性质,按一定比例计入该门课程成绩。5、课程设计报告中的各模块填写的内容是评分的主要依据,如果不够书写,可以自行添加附页。6、按规定的时间提交报告给教师评定成绩,由任课教师交到工学院存档。课程设计目录课程名称:高级语言程序设计序号课程设计名称起止页码设计任务题目名称学生证管理系统设计班级1指导教师地点工学院成绩保存输入添加的联系资料是否保存开始返
2、回菜单函数结束添加模块NY学年2011-2012开始日期结束日期一、问题分析(围绕设计题目,进行课程设计开始前的准备过程,在此以问题分析的形式展开,从设计的总体性上对所承担的设计题目的思考,分析,此模块内容请手工填写) 对这个系统需求分析,学生证管理系统要有储存、录入、读取、输出、添加、删除、修改、查询、统计的功能。 我们将各种功能模块化,以便进行设计。分为保存信息、输入模块、读取信息、更新模块(添加学生信息,删除信息,修改模块)、查询模块(按学号查找,按姓名查找,按班级查找)、统计模块。然后根据各模块分别设计程序。 二设计流程图根据需求分析,可以把这个系统的设计分为添加、修改、查询、浏览、统
3、计、删除六大模块,其中查询模块可以分为三个子模块,统计模块可以分为三个子模块,子模块下面还有子函数;系统功能模块图如下所示:1. 主函数模块2. 添加模块3. 修改模块 4.浏览模块5.查询模块6.统计模块7.删出模块三程序代码#include#include#include#define N 100struct Class name); do printf(n性别(男或女):); scanf(%s,sex); if(strcmp(sex,男)!=0)&(strcmp(sex,女)!=0) printf(输入错误,请输入男或女!n);right=1;getchar(); else right=
4、0; while(right=1); strcpy(StuInfo0.Sex,sex); do printf(n学号(11位):); scanf(%s,sno); if(strlen(sno)!=11) printf(输入错误,学号长度应为11位数!n);right=1;getchar(); else right=0; while(right=1); strcpy(StuInfo0.Sno,sno); do printf(n年龄:); scanf(%d,&age); if(age100) printf(年龄应在0-100之间,请重新输入年龄!n);right=1;getchar(); else
5、 right=0; while(right=1); StuInfo0.Age=age; do printf(n班号(6位):); scanf(%s,cno); if(strlen(cno)!=6) printf(输入错误,班号长度应为6位数!n);right=1;getchar(); else right=0; while(right=1); strcpy(StuInfo0.,cno); printf(n班名:); scanf(%s,&StuInfo0.; fprintf(fp,n%st%st%st%dt%st%s,StuInfo0.Sname,StuInfo0.Sex,StuInfo0.Sn
6、o,StuInfo0.Age,StuInfo0.,StuInfo0.; fclose(fp); printf(n保存成功!n); printf(n请按enter键返回主菜单!n); getchar(); getchar(); menu(); for(i=0;!feof(fp);i+) name,&StuInfoi.Sex,&StuInfoi.Sno,&StuInfoi.Age,&StuInfoi.,&StuInfoi.; num=i; if(num=N) printf(n保存记录数超出结构体数组数的大小,请先修改N的值n); menu(); printf(n请按照提示输入学生信息:nn); p
7、rintf(姓名:); scanf(%s,&StuInfonum.Sname); do printf(n性别(男或女):); scanf(%s,sex); if(strcmp(sex,男)!=0)&(strcmp(sex,女)!=0) printf(输入错误,请输入男或女!n);right=1;getchar(); else right=0; while(right=1); strcpy(StuInfonum.Sex,sex); do printf(n学号(11位):); scanf(%s,sno); if(strlen(sno)!=11) printf(输入错误,学号长度应为11位数!n);
8、right=1;getchar(); else right=0; for(i=0;inum;i+) if(strcmp(sno,StuInfoi.Sno)=0) printf(该学号已经存在,请重新输入!n); right=1; getchar(); while(right=1); strcpy(StuInfonum.Sno,sno); do printf(n年龄:); scanf(%d,&age); if(age100) printf(年龄应在0-100之间,请重新输入年龄!n);right=1;getchar(); else right=0; while(right=1); StuInfo
9、num.Age=age; do printf(n班号(6位):); scanf(%s,cno); if(strlen(cno)!=6) printf(输入错误,班号长度应为6位数!n);right=1;getchar(); else right=0; while(right=1); strcpy(StuInfonum.,cno); printf(n班名:); scanf(%s,&StuInfonum.; name,StuInfonum.Sex,StuInfonum.Sno,StuInfonum.Age,StuInfonum.,StuInfonum.; fclose(fp); printf(n保
10、存成功!n); printf(n请按enter键返回主菜单!n); getchar(); getchar(); menu();void modify()name,&StuInfoi.Sex,&StuInfoi.Sno,&StuInfoi.Age,&StuInfoi.,&StuInfoi.; num=i; fclose(fpr); printf(n请输入学号选择要修改的记录:); scanf(%s,StuNO); for(i=0;inum;i+) if(strcmp(StuNO,StuInfoi.Sno)=0) found=i; printf(n你要修改的学生信息为:nn); printf(姓名
11、 性别 学号 年龄 班号 班名n); printf(%st%st%st%dt%st%sn,StuInfoi.Sname,StuInfoi.Sex,StuInfoi.Sno,StuInfoi.Age,StuInfoi.,StuInfoi.; printf(n请按照提示输入学生的新信息:n); printf(姓名:); scanf(%s,&StuInfofound.Sname); do printf(n性别(男或女):); scanf(%s,sex); if(strcmp(sex,男)!=0)&(strcmp(sex,女)!=0) printf(输入错误,请输入男或女!n);right=1;get
12、char(); else right=0; while(right=1); strcpy(StuInfofound.Sex,sex); do printf(n学号(11位):); scanf(%s,sno); if(strlen(sno)!=11) printf(输入错误,学号长度应为11位数!n);right=1;getchar(); else right=0; for(i=0;inum;i+) if(i!=found)&(strcmp(sno,StuInfoi.Sno)=0) printf(该学号已经存在,请重新输入!n); right=1; getchar(); while(right=
13、1); strcpy(StuInfofound.Sno,sno); do printf(n年龄:); scanf(%d,&age); if(age100) printf(年龄应在0-100之间,请重新输入年龄!n);right=1;getchar(); else right=0; while(right=1); StuInfofound.Age=age; do printf(n班号(6位):); scanf(%s,cno); if(strlen(cno)!=6) printf(输入错误,班号长度应为6位数!n);right=1;getchar(); else right=0; while(ri
14、ght=1); strcpy(StuInfofound.,cno); printf(n班名:); scanf(%s,&StuInfofound.; if(fpw=fopen(,w)=NULL) printf(文件打不开,保存失败!n); menu(); for(i=0;inum;i+) name,StuInfoi.Sex,StuInfoi.Sno,StuInfoi.Age,StuInfoi.,StuInfoi.; fclose(fpw); printf(n修改成功!n); printf(n请按enter键返回主菜单!n); getchar(); getchar(); menu(); if(fo
15、und0) printf(n没有找到该学号的记录:n); printf(n请按enter键返回主菜单!n); getchar(); getchar(); menu(); void browse()name,&StuInfoi.Sex,&StuInfoi.Sno,&StuInfoi.Age,&StuInfoi.,&StuInfoi.; fclose(fp); num=i; printf(n已添加%d个学生信息nn,num); printf(姓名 性别 学号 年龄 班号 班名n); for(i=0;inum;i+) name,StuInfoi.Sex,StuInfoi.Sno,StuInfoi.A
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学生证 管理 系统 课程设计 报告
链接地址:https://www.31doc.com/p-6178185.html