C语言课程设计报告--学生学籍管理系统.doc

上传人:可**** 文档编号:76753891 上传时间:2023-03-12 格式:DOC 页数:18 大小:3.67MB
返回 下载 相关 举报
C语言课程设计报告--学生学籍管理系统.doc_第1页
第1页 / 共18页
C语言课程设计报告--学生学籍管理系统.doc_第2页
第2页 / 共18页
点击查看更多>>
资源描述

《C语言课程设计报告--学生学籍管理系统.doc》由会员分享,可在线阅读,更多相关《C语言课程设计报告--学生学籍管理系统.doc(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、.专业资料一、分析系统功能,绘制系统功能构造框架图一、分析系统功能,绘制系统功能构造框架图 1 11.11.1、分析系统功能、分析系统功能 11.21.2、构造框架图、构造框架图 1二、程序代码以及界面形式二、程序代码以及界面形式 2 22.1 程序代码如下 22.2、界面形式 7三、使用说明三、使用说明 8 8四、日志四、日志 1111五五、心心得得体体会会1515六六、参参考考文文献献16162013XXXXXX 学院课程设计任务书文档副标题XXXXX-.-.可修编.1.11.1、分析系统功能、分析系统功能1用户进入主菜单后,就会在看到,菜单项选择项中添加有系统的各项功能,进入的应的选项就

2、可进展相应的操作.其主要功能有:1、录入学生信息2、删除学生信息3、查询学生信息4、学生信息排序5、改学生信息6、保存退出系统2用户选择所需操作的选项,进入相应的操作界面,在这里用户就可开场进展操作。1.21.2、构造框架图、构造框架图-.-.可修编.2.1 程序代码如下#includestdio.h#includeconio.h#includestring.h#includestdlib.h#define PF printf#define SF scanfstatic int n,i;struct address_bookchar name20;int num;char sex;char c

3、las40;long telephone;char addr40;主 菜 单录入学生信息删除学生信息查询学生信息修改学生信息学生信息排序保存退出系统-.-.可修编.stud200;void add()char j;front1:system(cls);/*清屏*/PF(n);PF(n 请输入要添加的 XX:);SF(%s,studn.name);PF(n 请输入要添加的学号(8 位):);SF(%d,&studn.num);PF(n 请输入要添加的性别(F/M):);SF(n%c,&studn.sex);PF(n 请输入要添加的班级:);SF(%s,&studn.clas);PF(n 请输入要

4、添加的:);SF(%ld,&studn.telephone);PF(n 请输入要添加的地址:);SF(%s,studn.addr);getchar();n+;PF(是否继续(Y/N)?:);j=getchar();getchar();if(j=y|j=Y)goto front1;/*再输入记录*/void del()intk=0,m,i;char j;front2:system(cls);/*清屏*/PF(n 请输入要删除的学号:);scanf(%d,&m);getchar();for(i=0;in;i+)if(m=studi.num)k=1;break;/*查找记录*/-.-.可修编.if(

5、k=1)/*删除记录*/for(k=i;kn-1;k+)studk=studk+1;n-;PF(已删除nn);elsePF(找不到要删除的记录!n);PF(按回车键返回:);getchar();PF(是否继续(Y/N)?:);j=getchar();getchar();if(j=y|j=Y)goto front2;void find()inti,k,s=0;char j;front3:s=0;system(cls);/*清屏*/PF(n 请输入要查询的学号:);SF(%d,&k);for(i=0;in;i+)if(k=studi.num)PF(XX 学号性别班级地址n);PF(%-10s%-8

6、d%c%-20s%-8ld%-6sn,studi.name,studi.num,studi.sex,studi.clas,studi.telephone,studi.addr);s=1;if(s=0)PF(查无此人!n);getchar();PF(是否继续查询(Y/N)?:);j=getchar();getchar();-.-.可修编.if(j=y|j=Y)goto front3;getchar();void arrange()int k,i;struct address_book t;system(cls);/*清屏*/PF(XX 学号性别班级地址n);for(k=0;kn-1;k+)for

7、(i=0;istudi+1.num)t=studi;studi=studi+1;studi+1=t;else continue;for(i=0;i=n-1;i+)if(studk.num!=0)PF(%-10s%-8d%c%-20s%-8ld%-6sn,studi.name,studi.num,studi.sex,studi.clas,studi.telephone,studi.addr);PF(按回车键返回!);getchar();getchar();void change()intk=0,m;char j;front5:system(cls);/*清屏*/PF(n 请输入要修改记录的学号:

8、);SF(%d,&m);getchar();for(i=0;in;i+)if(m=studi.num)k=1;break;/*查找*/if(k=1)/*修改*/PF(n);PF(n 请输入修改后的 XX:);-.-.可修编.SF(%s,studi.name);PF(n 请输入修改后的学号:);SF(%d,&studi.num);PF(n 请输入修改后的性别(F/M):);SF(n%c,&studi.sex);PF(n 请输入修改后的班级:);SF(%s,&studi.clas);PF(n 请输入修改后的:);SF(%ld,&studi.telephone);PF(n 请输入修改后的地址:);S

9、F(%s,studi.addr);PF(修改成功n);getchar();if(k=0)PF(找不到要修改的记录!n);PF(按回车键返回:);getchar();getchar();PF(是否继续(Y/N)?:);j=getchar();getchar();if(j=y|j=Y)goto front5;void main()char j;PF(nnnnnnttt欢送使用学生学籍管理系统);PF(nnntttt制作人:健);PF(nnntttt2008 年 6 月);PF(nnnnnt 按回车键进入主菜单:);getchar();loop:system(cls);PF(n);PF(tttt*n

10、);PF(tttt*主菜单*n);PF(tttt*n);PF(tt1:录入学生信息2:删除学生信息nn);PF(tt3:查询学生信息4:学生信息排序nn);-.-.可修编.PF(tt5:修改学生信息6:保存退出系统nn);PF(t请选择1/2/3/4/5/6:);j=getchar();if(j=n)goto loop;/*返回主菜单*/switch(j)case 1:add();goto loop;/*返回主菜单*/case 2:del();goto loop;case 3:find();goto loop;case 4:arrange();goto loop;case 5:change()

11、;goto loop;case 6:FILE*fp;fp=fopen(student.dat,w);for(i=0;in;i+)fwrite(&studi,sizeof(struct address_book),1,fp);fclose(fp);exit(0);default:goto loop;2.2、界面形式-.-.可修编.学生学籍管理系统是针对学生信息的管理,主要功能是添加学生信息、删除学生信息、查询学生信息、学生信息排序、修改学生信息、保存信息。用户翻开程序,进入主界面如图 1(1)、按回车进入主菜单,列出各项功能-.-.可修编.(2)、输入 1 进入录入界面,用户即可录入信息,当录入

12、完即会提示“是否继续,如果输入“Y或者“y,那么会继续录入,假设输入“N或者“n那么会退出到主菜单。2、在主菜单中,输入 2,那么会进入删除界面,输入要删除的学生的学号即可将该学生的信息删除。-.-.可修编.3、在主菜单中,输入 3,那么会进入查询界面,输入要查的学生的学号即可查询到信息。4、在主菜单中,输入 4,那么会进入进入学生信息排序,在这里会显示按学号由小到大排列出的所有学生的信息。5、在主菜单中,输入 5,那么会进入学生信息修改界面,输入想修改学生的学号后,就可在这里可以对该学生信息进展修改。-.-.可修编.6、在主菜单中,输入 6,那么会退出系统,并且系统会自动对信息进展保存。6

13、月 23 日星期一从今天起,正式开场做课程设计了。但坐到电脑前想开场做时,却不懂如何开场写起,都感到有点陌生了。因为前一阵一直在忙于各科的考试,好久没碰 C 语言了,都开场有生疏感了。但还是试着在电脑上编了下,光要写个主函数还很吃力,更头痛的吃力的结果还换来了很多错误,本想编译下,试试的,结果错误警告一大堆。鉴于此,我还是决定先把书再好好看下,“工欲善其事,必先利其器嘛!6 月 24 日星期二-.-.可修编.昨天看了一天的书,又加上今天看的,可却连一半还没看完。我是按部就班的顺序往下看的,但因为书的前半局部大多是根底知识,因此在晚上上课时依旧不知如何编写。折腾了一晚上,想编写要调用的函数的,试

14、着编了好多,但都是些到处是错误的程序,根本没法用。而且编的时候还是发现自己好多东西都忘记了,因此觉得还是得接着去看书,没辙,还是先把书吃透,把根本程理论再实践吧!6 月 25 日星期三今天又是啃了一天的书,本还想去机房试试的呢,结果都没来得及去,刚够把书看完。今天重点把数组、函数和文件局部看了下。晚上上机的时候在机器上试了下,并为我的主函数编了个构造体数组,用来存录入的信息。同时今晚在调试主函数时发现我的主函数没有清屏的功能,所有工作都在同一屏幕上。问了同学,为里面加了个清屏的语句,但要加这语句得另加个头文件,问为什么要加这头文件,他也不懂,只知道就是这样规定的,并且这些规定都是得记住的。还是

15、学得不够多,得慢慢充实自己!6 月 26 日星期四下午 C 语言考试,复习了一上午,丁点课程设计也没碰。等下午考完试直奔机房,编写了两小时,只给我的程序加了个添加了个“录入学生信息的函数。在做时候碰到了不少的问题。主要是我的程序一次只能录入一个学生信息,好不容易加了个可以继续录入的语句,可又碰到了新的问题。当我录入学生信息的前三项后,就直接进入“是否继续-.-.可修编.录入。我疑心是有肯能在定义数组长度时定义太大了,当我把它缩小后再编译、连接、运行时居然成功了,可我现在还没确定到底时什么原因。6 月 27 日星期五又碰到新问题了。我把其他要调用的函数也加进去了,但是在用的时候发现加进去的那些函

16、数都不能用,就一添加函数在运行时是正常的,而其他的进入是可以,但在执行的时候,它就会出来警告,说不能被读。自己找,也请同学帮助找了,但都没找出毛病。碰这问题实在是难办,因为不能执行,我也就不知道这些函数在这里运行是否会正常,也就不知道是否需要改动。6 月 30 日星期一关于“警告的问题到现在还没解决,有点心烦意乱了,改了下程序,可问题又多了。在“查找项里也出现了问题,在查找时候即使是查找一个人,它却也会每次都会把所查找的人给找出后,接着又会把其他人的信息以“查无此人显示出来。反复检查下发现好似是算法的问题。是在循环里的时候出了错,它自己不停了,非得把所有的运行一遍在停。在我加了停顿条件后问题总

17、算是得到解决了。可“警告的问题今天还是没解决掉。7 月 1 号星期二-.-.可修编.“警告的问题困扰好久了,真是头痛,都快被它给崩溃了。今天上课时,我又检查和调试了下,可还是没找到问题在哪儿。自己是搞不定了,只能是请教教师了。虽然向教师去请教的人很多,但还是被我逮到时机了,让教师帮我看了下,检查发现原来是在调用函数和主函数中所定义的类型产生了差异。将被掉函数里的改正来后问题久解决了。7 月 2 号星期三程序差不多搞定了,就等辩论了!准备辩论至于还是在调试程序,检查下是否会有遗漏的毛病。但目前为止还没有找到。去辩论的人已经有很多了,顺利通过的也不少。有点安奈不住了,想去辩论,可还是有点担忧。为了

18、一次通过也不急着去辩论,反正人多,轮到我还不知道要等多久,还是静下心来再把程序检查下吧。7 月 3 号星期四昨天想辩论来着,可是辩论的人实在是太多,把教师围得严严实实的,想必他们都急着回家,而我又不着急,就不和他们去抢着去辩论了,大家都在那儿挤一块儿,天又这么热,虽然开可空调在那儿也不好受,还是接着检查我的程序。今天检查时候还真检查出了个警告,虽然每次编译之后都是 0 个错误 0 个警告,但在编译之后实际是会显示一个警告的只是没仔细去看。但问题也不大,对程序也没影响的,只是我重复对文件进展了定义,其实是不必要的,删除那个定义就解决了。-.-.可修编.7 月 4 号星期五现在是万事俱备,只欠辩论

19、了。下午一上课,我就在那儿等着辩论了。教师一来我就去辩论了,坐那儿也没紧的感觉了,因为对程序已经太熟悉了,胸有成竹了。结果与意料一样顺利通过辩论,虽然谈不上什么很了不起的事,但心里还是有点小喜悦的,为这课程设计都做了两星期了,光是程序就不知改了多少回,其中的困难也只有自己知道了。现在都搞定了,呵呵!两周的课程过起来其实也是很快的。这是我第一次做课程设计,起初还没做的时候觉得很快自己就将得编一个较大的程序,将会很有意思。带着最初的好奇心,新鲜感就这样开场了第一天的编程,结果是大失所望。做课程设计并不是自己想象中的那样有意思,而是很枯燥,很乏味的。也没想象中的那样简单,并不是像我们平时上 C 语言

20、课时,每次编的那些小程序,没那么简单。我们现在要做的就是将我们平时学的,做的那些小程序都合理的凑到一块儿来。而把这些小程序都加到一块儿来,并不是随意的将它们放到一个程序中就完事的,而是必须得合理,且得顾及到各个方面。正是由于编程的纷繁复杂,且构造的严谨,因此编程的过程中到处是困难和问题。它考验的不仅是我们的平时用功程度,以及我们对所学知识的熟练掌握程度、应用的灵-.-.可修编.活程度,它还考验我们的毅力。在刚开场的几天时,由于前一阵忙于各科的考试,C 语言已经好久没碰了,所学的知识都有点遗忘了,在编写时处处碰壁,一直会停顿翻书,编得自己都开场心烦意乱了,实在是编不下去了,于是索性就停了三天去看

21、书,先把书给吃透。并在后期的程序调试中也碰到不少的问题,好多问题自己反复检查了几遍都没查出,但在教师的帮助下还是一下就查出了。并不是这些问题多难,而是不够心细。因此做课程设计、编程时,它还考验并锻炼我们的心细程度。经过这次的课程设计的实践,我受益颇多,不仅是对我掌握知识、灵活运用知识的一次考验和锻炼,也是对我生活态度的一次锻炼,让我学会心细和拥有毅力,更具信心和恒心,碰到困难不再退缩,而是坚强面对。1谭浩强编著C 程序设计:清华大学,19912谭浩强编著C 程序设计题解与上机指导:清华大学,19923潭浩田淑清编著PASCAL 语言程序设计第二版:高等教育,19984Herbert Schildt著戴健鹏译C 语言大全第二版:电子工业,1994-.-.可修编.

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

当前位置:首页 > 应用文书 > 工作计划

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁