学生学籍信息管理系统设计书.doc

上传人:飞****2 文档编号:63864051 上传时间:2022-11-27 格式:DOC 页数:14 大小:499KB
返回 下载 相关 举报
学生学籍信息管理系统设计书.doc_第1页
第1页 / 共14页
学生学籍信息管理系统设计书.doc_第2页
第2页 / 共14页
点击查看更多>>
资源描述

《学生学籍信息管理系统设计书.doc》由会员分享,可在线阅读,更多相关《学生学籍信息管理系统设计书.doc(14页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、学生学籍信息管理系统 -C语言课程设计指导教师:王丽设 计 者:刘忠泰 刘启东 陈俊京 程 龙 专业班级:通信112班设计时间:2012年6月组 员 分 工1、组长:刘忠泰 主函数部分及输入信息、输出信息。2、组员:程 龙 查询信息。3、组员:刘启东 修改信息。4、组员:陈俊京 添加信息。 学生学籍信息管理系统一、系统的软硬件环境1、硬件环境:一般来说586电脑就可以提供并支持系统的使用及运行,此外,若想打印或成稿还需要使用打印机; U盘、软盘也是程序的必要载体。2、软件环境: Windows环境下安装Turbo C2.0语言系统,安装完毕后即可使用,而且要用到UCDOS。二、系统总体框架图

2、学生学籍信息管理系统是实现对学生学籍信息如学号、姓名、性别、年龄、家庭地址、联系电话等实现输入、查询有关信息、修改有关信息、输出、添加新生信息等功能的系统,系统框架如图1所示。学生学籍信息管理系统输入模块输出模块查找模块修改模块追加模块显示模块按学号查找按姓名查找按姓名修改按学号修改排序模块图1 学生学籍信息管理系统框架图三、程序功能简介(1)输入模块(creat函数)该模块是实现对学生姓名、性别、学号、成绩、年龄等的录入并保存到文件“stu”中。(2)修改模块(modify函数)该模块实现按学号或按姓名对学生所有信息的修改。修改成功显示已修改后的文件数据。(3)查找模块(search函数)实

3、现按学号或姓名查询每个学生的学号、姓名、性别、年龄、地址等信息。查到后显示所查学生的全部信息,若不存在则显示未找到。(4)输出模块(output函数)该模块实现对文件“stu” 学生姓名、性别、学号、地址、年龄等的显示。 (5)添加模块(ADD函数) (6)显示模块(show函数)该模块实现制作人员相关信息的显示。(7)退出运行界面(quit)退出整个函数运行界面。四、结束语通过本次课程设计,我学到很多东西,而最大的收获就是:真正从实践的角度初步体会到了C语言在实际生活中的作用,也深刻体会到了它带来的方便快捷。美中不足的就是,本程序还处于初级阶段的学生信息管理功能中,只实现了对学生的录入、修改

4、、查询、输出等简单功能,不一定在实际中有大的用途。在此次程序设计中,出现了各种各样的问题,在完成各自模块建立起程序后运行后,出现了在按照正确形式输入后,不能正确输出结果,而且在运行时也没有提示有错误,无奈之下去找老师解决问题,老师告诉我很有可能是输入函数的问题,经过仔细的检查和调试我最终用把变量定义为外部变量的方式解决了问题。查询模块是我编写是花费时间最多的一部分,并且在其中加入了子菜单,想实现分别用学号和姓名查找,所以花费了很多精力,也修改了很多次,但在努力下最终成功了;然后仿照查找模块在修改模块中也加入了子菜单,丰富了程序的函数。程序编排中可能有繁琐之处有待进一步简化,本次设计的困难是在编

5、辑程序时发现自己对C语言的了解还处于初级阶段,不能完美的设计出能够在实际生活中应用的程序,如果有机会我会继续学习,做出更好的程序。五、参考文献1谭浩强.C程序设计.清华大学出版社.2005年7月2陈志华.Delphi 6.0编程实例.中国水利水电出版社.2002年6月3David M.Collopy、罗铁庚.C语言教程:模块化程序设计.清华大学出版社. 2004年9月4邓文新、张宏烈.C语言程序设计方法.哈尔滨工业大学出版社.2004年2月5田淑清.全国计算机等级考试二级教程.高等教育出版社.1998年7月附录: 程序清单#include#include#include#include#def

6、ine N 100typedef struct studentchar num15;char name10;int age;char sex5;char addr50;char tel15;STUDENT;struct student stuN;int w=0,a,j=0;void print_list()printf(n 学号 姓名 年龄 性别 地址 电话号码n);void print_message(int i,struct student stuN)printf(n %-12s,stui.num);printf(%-7s,stui.name);printf(%-7d,stui.age);

7、printf(%-8s,stui.sex);printf(%-26s,stui.addr);printf(%s,stui.tel);int main()char c;void creat (struct student stuN);void modify (struct student stuN);void search (struct student stuN);void output (struct student stuN);void add(struct student stuN);void arr(struct student stuN);void show(); do printf

8、(nn=n); printf( 欢迎进入学生学籍信息管理系统! 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); printf(请选择功能种类 并按回车键执行命令n );scanf(%c,&c); getchar();switch(c) case 1:creat(stu);break; case 2:add(

9、stu);break; case 3:output (stu);break; case 4:search(stu);break; case 5:modify(stu);break; case 6:arr(stu);break; case 7:show(stu);break;case 8:return; default:printf(ERROR!请正确输入!n);continue; while(w=0);void creat(struct student stuN) /*输入信息*/FILE *fp;int i,j;char ch,t5;if(fp=fopen(MESSAGE.dat,wb)=N

10、ULL)printf(无信息); exit(0);i=0;printf(tt=n);do printf(tt输入学号:);gets(stui.num); printf(tt姓名:);gets(stui.name);printf(tt年龄:);gets(t);stui.age=atoi(t);printf(tt性别:);gets(stui.sex);printf(tt住址:);gets(stui.addr);printf(tt电话:);gets(stui.tel);printf(tt是否继续? );scanf(%c,&ch);getchar();i+;while(ch=y|ch=Y);for(j

11、=0;j=i-1;j+)fwrite(&stuj,sizeof(struct student),1,fp);fclose(fp);void modify(struct student stuN) /*修改信息*/FILE *fp; char name10,num15,t5; int i,j,m=0,sum; char ch;if(fp=fopen(MESSAGE.dat,rb)=NULL) printf(无信息); elseprint_list();for(i=0;fread(&stui,sizeof(struct student),1,fp);i+) print_message(i,stu)

12、; sum=i; fclose(fp);printf(ttn=n);do m=0;printf(ntt1.按学号修改 2.按姓名修改);printf(nntt*请选择 :);scanf(%c,&ch);getchar();if(ch=1)printf(tt输入要修改的学号:);gets(num); for(i=0;i=sum;i+) if(strcmp(stui.num,num)=0)print_list();print_message(i,stu); printf(n); printf(tt输入新的学号:);gets(stui.num); printf(tt姓名:);gets(stui.na

13、me);printf(tt年龄:);gets(t);stui.age=atoi(t);printf(tt性别:);gets(stui.sex);printf(tt住址:);gets(stui.addr);printf(tt电话:);gets(stui.tel); printf(tt=修改后信息=n);print_list();print_message(i,stu); printf(n); m=1; if(ch=2) printf(tt输入要修改的姓名:); gets(name); for(i=0;i=sum;i+) if(strcmp(stui.name,name)=0) print_lis

14、t();print_message(i,stu); printf(n); printf(tt请输入学号:);gets(stui.num); printf(tt姓名:);gets(stui.name);printf(tt年龄:);gets(t);stui.age=atoi(t);printf(tt性别:);gets(stui.sex);printf(tt住址:);gets(stui.addr);printf(tt电话:);gets(stui.tel); printf(tt=修改后信息=n);print_list();print_message(i,stu); printf(n);m=1; if(

15、m=0)printf(ntt无该学生信息); printf(ntt是否继续(Y or N)? );scanf(%c,&ch);getchar();while(ch=y|ch=Y);if(fp=fopen(MESSAGE.dat,wb)=NULL) printf(无信息);elsefor(j=0;j=sum;j+) fwrite(&stuj,sizeof(struct student),1,fp);fclose(fp); void search (struct student stuN) /*查找信息=*/FILE *fp;char ch,k;char xm10,xh15;int i,j=0,s

16、um;int m;if(fp=fopen(MESSAGE.dat,rb)=NULL)printf(无信息);elseprint_list(); for(i=0;fread(&stui,sizeof(struct student),1,fp);i+) print_message(i,stu); sum=i; fclose(fp);do m=0; printf(ttn=n); printf(ntt1.按学号查找 2.按姓名查找); printf(nntt*请选择:); scanf(%c,&k);getchar(); printf(tt=n); if(k=1) printf(tt输入学号:);get

17、s(xh); for(i=0;i=sum;i+) if(strcmp(stui.num,xh)=0) print_list();print_message(i,stu); printf(n);m=1; if(k=2)printf(tt输入姓名:);gets(xm); for(i=0;i=sum;i+) if(strcmp(stui.name,xm)=0) print_list();print_message(i,stu); printf(n);m=1; if(m=0) printf(ntt无该学生信息); printf(ntt是否继续(Y/N)?);scanf (%c,&ch);getchar

18、();while(ch=Y|ch=y);void output(struct student stuN) /*输出信息*/FILE *fp;int i;if(fp=fopen(MESSAGE.dat,rb)=NULL)printf(无信息);printf(tt=输出信息=);print_list();for(i=0;fread(&stui,sizeof(struct student ),1,fp);i+) print_message(i,stu);fclose(fp);printf(n按回车返回主菜单);getchar(); void add(struct student stuN) /*添加

19、信息*/FILE *fp;int i=0,j;char ch,t5;if(fp=fopen(MESSAGE.dat,ab)=NULL)printf(无信息);printf(tt=n);do printf(tt输入学号:);gets(stui.num); printf(tt姓名:);gets(stui.name);printf(tt年龄:);gets(t);stui.age=atoi(t);printf(tt性别:);gets(stui.sex);printf(tt住址:);gets(stui.addr);printf(tt电话:);gets(stui.tel); printf(tt是否继续(Y

20、/N)?); ch=getchar(); getchar();i+;while(ch=y|ch=Y);if(fp=fopen(MESSAGE.dat,ab)=NULL) printf(无信息);elsefor(j=0;j=i-1;j+)fwrite(&stuj,sizeof(struct student),1,fp);fclose(fp);void arr(struct student stuN) /*信息排列(按学号) */FILE *fp;int i,j,sum;STUDENT t;if(fp=fopen(MESSAGE.dat,rb)=NULL)printf(无信息);elsefor(s

21、um=0;fread(&stusum,sizeof(struct student),1,fp);sum+);fclose(fp);for(i=0;isum;i+)for(j=i+1;jatoi(stuj.num)t=stui;stui=stuj;stuj=t;print_list();if(fp=fopen(MESSAGE.dat,wb)=NULL) printf(无信息);else for(j=0;jsum;j+)fwrite(&stuj,sizeof(struct student),1,fp);print_message(j,stu);fclose(fp);void show() /*显示制作人员信息*/printf( C语言程序设计 nnnn);printf( = 学生学籍信息系统 =n);printf( 指导教师: * n);printf( 学 生: * n);printf( * 学 院 n);printf( * 班 n=n);printf( n);getchar();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com