C语言课程设计学生学籍管理系统_第1页
C语言课程设计学生学籍管理系统_第2页
C语言课程设计学生学籍管理系统_第3页
C语言课程设计学生学籍管理系统_第4页
C语言课程设计学生学籍管理系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2013XXXXX)学院课程设计任务书 文档副标题XXXXX分析系统功能,绘制系统功能结构框架图1.1、分析系统功能.1.2、结构框架图.程序代码以及界面形式.2.1程序代码如下2.2、界面形式使用说明四、日志五、心得体会六、参考文献分析系统功能(1)用户进入主菜单后,就会在看到,菜单选项中添加有系统的各项功能,进入的应的选项就可进行相应的操作.其主要功能有:1、录入学生信息2、删除学生信息3、查询学生信息4、学生信息排序5、改学生信息6保存退出系统(2)用户选择所需操作的选项,进入相应的操作界面,在这里用户就可开始进行操作。1.2、 结构框架图2.1程序代码如下#in eludestdio.

2、h#in eludecon io.h#in eludestri ng.h#in cludestdlib.h#defi ne PF printf#defi ne SF sea nfstatic int n ,i;struct address_bookchar n ame20;int num;char sex;char clas40;long tele phone;char addr40;stud200;void add()char j;fron t1:system(cls); /* 清屏 */P F(n);PF(n请输入要添加的姓名:);SF(%s,stud n.n ame);PF(n请输入要添

3、加的学号(8 位):);SF(%d,&stud n.n um);PF(n请输入要添加的性别(F/M):);SF(n%c,&stud n .sex);PF(n请输入要添加的班级:);SF(%s,&stud n.clas);PF(n请输入要添加的电话号码:);SF(%ld,&stud n.tele pho ne);PF(n 请输入要添加的地址:);SF(%s,stud n.addr);getchar();n+;PF(是否继续(丫/N)?:);j=getchar(); getchar();if(j=yllj=Y) goto fron t1;/*再输入记录*/void del()int k=0,m,i

4、;char j;fron t2:system(cls); /*清屏*/PF(n请输入要删除的学号:);scan f(%d,&m);getchar();for(i=0;i vn ;i+)if(m=studi. nu m) k=1;break;/*查找记录*/if(k=1)/*删除记录*/ for(k=i;k n-1;k+) studk=studk+1;n-; PF(已删除nn);elsePF(找不到要删除的记录!n);PF(按回车键返回:);getcharO;PF(是否继续(丫/N)?:);j=getchar(); getchar();if(j=yilj=Y) goto fron t2;void

5、 fin d()int i,k,s=0; char j;front3:s=0;system(cls); /*清屏*/PF(n请输入要查询的学号:);SF(%d,&k);for(i=0;i vn ;i+)if(k=studi. num)PF( 姓名 学号性别班级电话地址n);PF( %-10s%-8d %c %-20s%-8ld%-6sn,studi. name,studi. nu m,studi.sex,studi.clas,studi.tele phone.studi.addr);s=1;if(s=0)PF(查无此人!n);getcharO;PF(是否继续查询(丫/N)?:);j=getch

6、ar();getchar();if(j=y|j=Y) goto fron t3;getchar();void arran ge()int k,i;struct address_book t;system(cls); /* 清屏 */PF( 姓名学号性别班级电话地址n);for(k=0;k n-1;k+) for(i=0;istudi+1. num)t=studi;studi=studi+1;studi+1=t;else con ti nue;for(i=0;iv=n-1;i+) if(studk. nu m!=0)PF( %-10s%-8d %c %-20s%-8ld%-6sn,studi.

7、name,studi. nu m,studi.sex,studi.clas,studi.tele phone.studi.addr);PF(按回车键返回! );getchar();getchar();void cha nge()int k=0,m;char j;fron t5:system(cls); /*清屏*/PF(n 请输入要修改记录的学号:);SF(%d,&m);getcharO;for(i=0;i vn ;i+)if(m=studi. num) k=1;break; /*查找*/if(k=1)/*修改*/ P F(n);PF(n请输入修改后的姓名:);SF(%s,studi. nam

8、e);PF(n请输入修改后的学号:);SF(%d,&studi. nu m);PF(n请输入修改后的性别(F/M):);SF(n%c,&studi.sex);PF(n请输入修改后的班级:);SF(%s,&studi.clas);PF(n请输入修改后的电话号码:);SF(%ld,&studi.tele pho ne);PF(n 请输入修改后的地址:);SF(%s,studi.addr);PF(修改成功n);getcharO;if(k=O)PF(找不到要修改的记录!n);PF(按回车键返回:);getchar();getchar();PF(是否继续(丫/N)?:);j=getchar(); get

9、char();if(j=y|j=Y) goto front5;void mai n()char j;P F(nnnnnnttt欢迎使用学生学籍管理系统);P F(nnntttt制作人:刘健);P F(nnntttt2008年6月);PF (nnnnnt按回车键进入主菜单:);getcharO;loop:system(cls);P F(n);PF (tttt*n);PF (tttt主菜单*n);PF (tttt*n);1:录入学生信息2:删除学生信息nn);3:查询学生信息4:学生信息排序nn);PF (tt5:修改学生信息 6:保存退出系统nn);PF (t请选择1/2/3/4/5/6:);j

10、=getchar();返回主菜单*/if(j=n) goto loop; /* switch(j)case 1:add(); goto loop; /*返回主菜单*/case 2:del(); goto loop;case 3:fin d(); goto loop;case 4:arran ge(); goto loop;case 5:cha nge(); goto loop;case 6: FILE *fp;fp=fo pen (stude nt.dat,w);for(i=0;i vn ;i+)fwrite(&studi,sizeof(struct address_book),1,fp);f

11、close(fp);exit(0);default: goto loop;2.2、界面形式学生学籍管理系统是针对学生信息的管理,主要功能是添加学生信息、删除学生信息、查询学生信息、学生信息排序、修改学生信息、保存信息。用户打开程序,进入主界面(如图1)、按回车进入主菜单,列出各项功能(2)、输入1进入录入界面,用户即可录入信息,当录入完即会提示“是否继续”,如果输入“丫”或者“ y”,则会继续录入,若输入“ N或者“ n”则会退出到主菜单。(2)、在主菜单中,输入2,则会进入删除界面,输入要删除的学生的学号即可将该学生的信息删除。(3)、在主菜单中,输入3,则会进入查询界面,输入要查的学生的学

12、号即可查询到信息。(4)、在主菜单中,输入4,则会进入进入学生信息排序,在这里会显示按学号由小到大排列出的所有学生的信息。5)、在主菜单中,输入 5,则会进入学生信息修改界面,输入想修改学生的学号后,就可在这里可以对该学生信息进行修改。6)、在主菜单中,输入 6,则会退出系统,并且系统会自动对信息进行保存。月 23 日 星期一从今天起,正式开始做课程设计了。 但坐到电脑前想开始做时, 却不懂如何开始写起,都感到有点陌生了。因为前一阵一直在忙于各科的考试,好久没碰C语言了,都开始有生疏感了。但还是试着在电脑上编了下,光要写个主函数还很吃力,更头痛的吃力的结果还 换来了很多错误,本想编译下,试试的

13、,结果错误警告一大堆。鉴于此,我还是决定先把 书再好好看下,“工欲善其事,必先利其器”嘛!月 24 日 星期二昨天看了一天的书,又加上今天看的,可却连一半还没看完。我是按部就班的顺序往 下看的,但因为书的前半部分大多是基础知识,因此在晚上上课时依旧不知如何编写。折 腾了一晚上,想编写要调用的函数的,试着编了好多,但都是些到处是错误的程序,根本 没法用。而且编的时候还是发现自己好多东西都忘记了,因此觉得还是得接着去看书,没 辙,还是先把书吃透,把基本程理论再实践吧!月 25 日 星期三今天又是啃了一天的书, 本还想去机房试试的呢, 结果都没来得及去, 刚够把书看完。今天重点把数组、函数和文件部分

14、看了下。晚上上机的时候在机器上试了下,并为我的主 函数编了个结构体数组,用来存录入的信息。同时今晚在调试主函数时发现我的主函数没 有清屏的功能,所有工作都在同一屏幕上。问了同学,为里面加了个清屏的语句,但要加这语句得另加个头文件,问为什么要加这头文件,他也不懂,只知道就是这样规定的,并 且这些规定都是得记住的。还是学得不够多,得慢慢充实自己!月 26 日 星期四下午C语言考试,复习了一上午,丁点课程设计也没碰。等下午考完试直奔机房,编 写了两小时,只给我的程序加了个添加了个“录入学生信息”的函数。在做时候碰到了不 少的问题。主要是我的程序一次只能录入一个学生信息,好不容易加了个可以继续录入的

15、语句,可又碰到了新的问题。 当我录入学生信息的前三项后, 就直接进入“是否继续录入” 我怀疑是有肯能在定义数组长度时定义太大了,当我把它缩小后再编译、连接、运行时居 然成功了,可我现在还没确定到底时什么原因。月 27 日 星期五又碰到新问题了。 我把其他要调用的函数也加进去了, 但是在用的时候发现加进去的 那些函数都不能用,就一添加函数在运行时是正常的,而其他的进入是可以,但在执行的 时候,它就会出来警告,说不能被读。自己找,也请同学帮忙找了,但都没找出毛病。碰 这问题实在是难办,因为不能执行,我也就不知道这些函数在这里运行是否会正常,也就 不知道是否需要改动。关于“警告”月 30 日 星期一

16、的问题到现在还没解决, 有点心烦意乱了, 改了下程序,可问题又多了。在“查找”项里也出现了问题,在查找时候即使是查找一个人,它却也会每次都会把所查 找的人给找出后,接着又会把其他人的信息以“查无此人”显示出来。反复检查下发现好 像是算法的问题。 是在循环里的时候出了错, 它自己不停了, 非得把所有的运行一遍在停。在我加了停止条件后问题总算是得到解决了。可“警告的问题今天还是没解决掉。7月 1 号 星期二“做小”警告”的问题困扰好久了,真是头痛,都快被它给崩溃了。今天上课时,我又检查和调试了下,可还是没找到问题在哪儿。自己是搞不定了,只能是请教老师了。虽然向老 师去请教的人很多,但还是被我逮到机

17、会了,让老师帮我看了下,检查发现原来是在调用 函数和主函数中所定义的类型产生了差异。将被掉函数里的改过来后问题久解决了。月 2 号 星期三程序差不多搞定了,就等答辩了!准备答辩至于还是在调试程序,检查下是否会有遗漏的毛病。但目前为止还没有找到。去答辩的人已经有很多了,顺利通过的也不少。有 点安奈不住了,想去答辩,可还是有点担心。为了一次通过也不急着去答辩,反正人多, 轮到我还不知道要等多久,还是静下心来再把程序检查下吧。月 3 号 星期四昨天想答辩来着,可是答辩的人实在是太多,把老师围得严严实实的,想必他们都急着回家,而我又不着急,就不和他们去抢着去答辩了,大家都在那儿挤一块儿,天又这 么热,

18、虽然开可空调在那儿也不好受,还是接着检查我的程序。今天检查时候还真检查出 了个警告,虽然每次编译之后都是 0 个错误 0个警告,但在编译之后实际是会显示一个警告的只是没仔细去看。 但问题也不大,对程序也没影响的, 只是我重复对文件进行了定义, 其实是不必要的,删除那个定义就解决了。月 4 号 星期五现在是万事俱备,只欠答辩了。下午一上课,我就在那儿等着答辩了。老师一来我就去答辩了,坐那儿也没紧张的感觉了,因为对程序已经太熟悉了,胸有成竹了。结果与意料一样顺利通过答辩,虽然谈不上什么很了不起的事,但心里还是有点小喜悦的,为这 课程设计都做了两星期了,光是程序就不知改了多少回,其中的困难也只有自己知道了。现在都搞定了,呵呵!两周的课程过起来其实也是很快的。这是我第一次做课程设计,起初还没做的时候觉 得很快自己就将得编一个较大的程序,将会很有意思。带着最初的好奇心,新鲜感就这样 开始了第一天的编程,结果是大失所望。做课程设计并不是自己想象中的那样有意思,而是很枯燥,很乏味的。也没想象中的那样简单,并不是像我们平时上C语言课时,每次编的那些小程序,没那么简单。我们现在要做的就是将我们平时学

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论