c语言课程设计--学生信息管理系统.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《c语言课程设计--学生信息管理系统.doc》由会员分享,可在线阅读,更多相关《c语言课程设计--学生信息管理系统.doc(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流c语言课程设计-学生信息管理系统.精品文档.C语言课程设计报告学生信息管理系统系统姓名学号组长/成员成绩匡晨辉2011040121015组长张旭2011040121030成员望家谊2011040121025成员蔡洋2011040121027成员杨孝光2011040121003成员指导老师:袁琼2012年6月15日目 录一 系统功能分析-3二 总体功能模块设计与分析-3 三 流程图-3四 系统调试及运行-9五 总结-15六 程序清单-20七 参考文献-20系统功能需求与分析一个信息管理系统,必须能对学生的基本信息进行方便的查看,这就需这个系统能
2、够对学生信息进行增加,删除,查找,查看,修改等操作。另外还能退出,清空信息等使系统跟好跟方便的管理信息。一、 总体功能模块设计与分析 设计总体功能应有6大模块:1. 信息录入模块 : 用来录入学生信息2. 信息修改模块 : 用来修改学生信息3. 信息查找模块 : 用来查找学生信息4. 信息删除模块 : 用来删除学生信息5. 信息清空模块 : 用来清空学生信息6. 信息显示模块 : 用来显示学生信息三、各模块程序流程图设计开始0主函数输入语句判断a值选择语句switch(a)按学号升序查看信息清空全 部信 息查找学生信 息删除学生信 息修改学生信 息全部学生信 息添加信息函 数退出系 统按年龄按
3、学号按姓名查询 按姓名按年龄段按学号 按学生姓名查找 按学生学号 按学生年龄添加信息函数选择1不在 判断人数是否在范围输出提示,输入人数第n个学生信息输入完了退出循环,返回菜单第一个学生信息输入完毕在提示输入姓名输入信息判断是在输入按任意键返回菜单将studentinfo中的信息写入到内存在内存中用结构体数组存放信息,用for循环一个个打印到屏幕选择8打开d盘中的studentinfo文件显示全部信息修改学生信息菜单选择2是y就保存N就不保存修改判断a 修改成功找到后提示要修改什么内容用switch选择输入姓名打开文件并读取到内存,用for循环一个个的找出符合条件的学生提示输入要修改的学生姓名
4、修改性别修改qq修改电话修改姓名修改学号修改地址如果没有找到显示没有此人并推出退出模块删除信息菜单选择7判断a值N就取消删除输入的是y就删除输入一个字符aaaAa没有找到就显示没有此人退出保存操作后的信息后退出如果找到询问是否确定删除用循环一个个查找读到内存中的结构体打开文件并写入内存查询学生信息1,2,3有输出信息是否退出退出判断有否此项用strcmp比较 年龄段是否继续查找 姓名 学号输入a值 查询方式没有提示没有此人程序运行过程写数据读数据显示数据键盘输入硬盘结构体内存四、系统运行及调试(分模块进行)1.添加学生信息2.查看全部学生信息3.按姓名修改学生信息4.删除学生信息5.按年龄段查
5、看学生信息6按学号升序查看7团队信息五、总结-匡晨辉- 这次课程设计是我第一次的设计,感慨很深,我发现做一个小小的通讯录都如此之难,可见开发一款软件是多麽的不容易啊。通过这次试验我也更加体会到了合作的重要性,同时也非常感谢我的队友们对我的大力支持,和极力的配合。没有他们的努力是不可能有这样的成功的。 我主要是做的学生信息删除,修改,文件的读写等模块。在删除模块的编写过程中我遇到了很多不小的麻烦。第一次写的时候发现只是在内存中删除了信息根本就没有从文件中把信息删除掉。后来发现我的文件时一读(fp=fopen(“dstudentinfo.txt”,”r”))的方式打开的。 后来在改正后在运行发现总
6、是删除的最后一个人的信息。就想到底是怎么回事呢,我是用for循环来实现对要删除的信息来查找的。最后总是删最后一个人,那也就是说,i永远是最后一个stu的下标。于是我就发现了原来我在for循环的查找过程中,找到了元素后没有结束循环而是继续i+,于是就在找到元素后加上break语句,退出循环。等等还有很多问题就不一一列出了。在程序的调试过程中我是采用分模块进行的,比如做好信息录入模块后就先把他放进主函数调试,看录入过程有什么问题。这样可以容易的找出错误和解决。在整个程序得框架基本完成,可以运行时进行的调试中发现界面不是很美观,于是再来修改代码这个过程是很繁琐的。需要很好的耐心,不过好在我最后还是把
7、界面弄得有模有样的。在前面的几个模块中遇到了很多问题,让后解决,这个过程不仅让程序得以顺利完成,而且让我重温了c语言的语法和思想,在做这个实验的过城中发现前面学得有些忘了,于是后头再看。印象变得更加深刻。总之,这次的课程设计不但学会了发现问题,分析问题,解决问题。还学会了共同合作,增强了团队精神。而且品尝到了通过自己努力的成果,真的很自豪!增强了自信-杨孝光-我做的这个模块是打开文件查看学生信息,刚开始这个指针文件类型不是太懂,在组队里成员帮助下,最后还是写下来了。随后那个if语句里面也不是很好搞,循环语句里面的feof(fp),fclose(fp)都是比较费解的东西,也只能在队友的鼎力帮助下
8、完成了。总之这次这个学生信息管理系统程序设计打开文件模块设计文件这方面的知识。我也渐渐掌握了指针文件的一些皮毛。在接下来得学习中要多多接触这一类型的程序。当然我得到最多的是团队里的协力协作,此程序写作过程在这里要特别感谢匡成辉,他给了我很大的帮助,对于资料的查找,这里也要感谢好友朱峰杰,知识点的查漏补缺,他与老匡给于我大量帮助,此部分工作的完成与其二人密不可分。当然其他队友也给了我其他方面的帮助以及精神上的鼓励,在此一并感谢。此部分程序的完成,功在团队。再次感谢他们。-蔡洋- 通过我做的这模块,我发现C语言是一门很难的课程,但是我既然选择了,就得好好学习下去。在本次程序设计过程中,我发现自己还
9、有很多知识点没有掌握,通过边试验边巩固的方法,慢慢地把自己的知识漏洞补的八九不离十了。在此次试验中,最重要的是团队合作,大家一起各自完成自己被分配到的任务 ,然后在综合在一起,慢慢地,发现大家不在是平时的嘻嘻哈哈,漫不经心,而是开始认真,踏实的完成各自的任务,没有人会因为自己的原因放弃自己的任务,做到了:不放弃! -望家谊- (按姓名查找学生信息模块)熟练掌握for.while.do.while循环语句的使用。熟练掌握if.switch分支语句的使用。熟练掌握函数的定义、说明、参数传递及嵌套和递归调用方法。通过C+实训,让我加深了对C语言的了解,而不只是单单的在课本中学到的那些理论,平时乏味的
10、课程,通过自己动手亲自编写,变的生动有趣,而在自己动手的过程中,出现的问题很多,比理论要难的多,当一个程序写完以后,经常会有很多错误而没法解决。不过,通过几天的实训,逐渐积攒了一些经验,有些错误可以很快就看出来。 这次实训有很大的收获,让我对C语言有了更深的认识,平时在课堂上学到的东西可以自己动手编写,将其转化成一些实用的技能。如果是一个程序写完一处错误也没用,会有种成就感,于是兴趣就来了,兴趣来了,自然学的东西也就多了,能把理论变成实际的技能,让我对C语言有了浓厚的兴趣和更深层的认识。 C语言是一个有序的学习,学了最基本的替换,然后扩展到循环,嵌套,条理很清楚,不是 一个零散的知识,实际上所
11、有的课程都如此,不过通过实训我也知道了自己的不足,存在的很多问题。 比如自己写的写的小程序出了问题,不会解决了就叫老师帮忙,虽然说一定意义上增加了师生之间的感情,但是会养成一种依赖的心理,碰到问题了第一个想到的是求助而不是自己独立解决,所以以后要多多锻炼自己的信心和增加自己的能力,争取做到不在身边的时候也可以完成一些简单的程序编写与错误排除。 还有自己的基础知识不扎实,遇到的问题,没有很好的逻辑思维,亲自编写一个陌生的程序的时候会有种无法下手的感觉,找不到突破口。通过实训,逐渐理清了顺序,对于简单的程序和一些相对比较繁琐的嵌套,循环,不在是看着一头雾水。其实只要理清了思路,把基础知识掌握了,然
12、后有条不紊的分析,一步一步理解,C语言还是很有意思的课程。 自己亲自动手编写程序让我增加了对C语言程序开发环境的了解,不管以后从事什么行业,学习C语言都对自己的职业很有帮助,如果是从事编程工程工作的话,就更有帮助了,即使以后的编程工作可能不用C语言,但是拥有扎实的C语言基础是对工作很有用的。 -张旭- 经过一个星期的奋战,终于完成了一个还算可以的设计,这几天我过的很充实,是我大学生活里继两次考试后又一次最充实的生活,看着自己的劳动成果,心里有种说不出的感觉。毕竟自己的努力还算有所回报,我为自己的努力感到自豪,当然我也认识到了自己学习中的不足,看到了自己在运用知识方面欠缺,在数组合指针方面的运用
13、还不是很顺手,在写头文件时,也没做到和后面的引用一一对应。但是通过这次课程设计,收获颇多。 我想说:为完成这次课程设计我们确实很辛苦,但苦中仍有乐。我们一边忙着复习备考,一边还要做课程设计,时间对我们来说一下子变得很宝贵,真是恨不得睡觉的时间也拿来用了。当自己越过一个又一个难题时,笑容在脸上绽放。当我们看到设计终于完成的时候,我们都乐了。对我而言,知识上的收获重要,精神上的丰收更加可喜。从这次的课程设计中,我不仅巩固了课本的知识,还学到了许许多多其他的知识。我知道了关于嵌套及循环的规律,设计有用到指针,可是自己的指针没有学好,于是就要重新翻书来确定自己的一些设计是否正确。 其次了解到团队合作很
14、重要,每个人都有分工,但是又不能完全分开来,还要合作,所以设计的成败因素中还有团队的合作好坏。 这次设计让我知道了学无止境的道理。我们每一个人永远不能满足于现有的成就,人生就像在爬山,一座山峰的后面还有更高的山峰在等着你。挫折是一份财富,经历是一份拥有。这次课程设计必将成为我人生旅途上一个非常美好的回忆! 当然我们的设计肯定有不足之处,希望老师批评指正,下次一定会做得更好六、参考文献1 王敬华 C语言程序设计教程(第二版)清华大学出版社2 谭浩强编著C程序设计题解与上机指导(第二版)清华大学出七、程序清单#include #include #include #include void welc
15、ome_info(); /小组信息void exchange();void type(); /输入函数void save(); /保存函数void clear();/void look(); /查看函数void find_by_name();/通过姓名查找void find_by_age();/通过年龄void find_by_birthday();/通过生日void find_by_numble();/通过学号void dele();/删除函数int openfile();/打开文件void open_and_see();/打开并查看文件struct studentchar num20;/学
16、号char name20;/姓名char sex10;/性别char age5;/年龄char birthday15,QQ12,telephone15,address100;/生日,QQ,电话,地址。stu100;int n=0;/全局变量void main()int b,flag=0;system(color 1f);while(1)/菜单printf(nttt欢迎进入学生信息管理系统!n);printf(n-);printf(-);printf(nttt 1.录入学生信息。);printf(nttt 2.修改学生的信息。);printf(nttt 3.按姓名查看学生信息);printf(n
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计 学生 信息管理 系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内