西安邮电学院C语言课程设计实习报告.doc

西安邮电学院C语言课程设计实习报告.doc

ID:59324362

大小:1020.00 KB

页数:25页

时间:2020-09-05

西安邮电学院C语言课程设计实习报告.doc_第1页
西安邮电学院C语言课程设计实习报告.doc_第2页
西安邮电学院C语言课程设计实习报告.doc_第3页
西安邮电学院C语言课程设计实习报告.doc_第4页
西安邮电学院C语言课程设计实习报告.doc_第5页
资源描述:

《西安邮电学院C语言课程设计实习报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、西安邮电学院高级语言程序设计报告书院系名称:电子工程学院学生姓名:黄覃专业名称:微电子班级:0902学号:时间:2010年6月23日至2010年7月2日实验题目学生管理系统一、 实验目的综合应用所学的计算机基础知识和所掌握的程序设计语言,自行设计并实现一个较为完整的小型管理信息系统的设计与开发。通过系统分析、系统设计、编程实现,写实验报告等环节,初步掌握软件系统的设计方法和步骤,锻炼大家灵活运用程序语言进行软件开发的初步能力,提高分析问题和解决问题的能力,提高程序设计水平。二、 功能要求1.运用结构体等编辑一个简单的学生信息管理系统,

2、使之能够完成学生基本信息的录入,修改,注销,并对成绩进行录入,修改,求和与排序。2.执行编译操作,并根据提示调试程序,排除所有的错误和警告,直到编译成功。3.执行运行操作,逐一对每个模块进行调试,直到全部程序运行成功。4.请指导老师进行检查,对程序进行相关解释与说明,回答老师所提出的相关问题。对程序不足之处进行改进。5.根据源程序及运行情况截取相应的图片,认真完成实验报告。需求分析1.信息录入与信息添加包含基本信息与成绩信息两个部分。基本信息部分包括学生的学号,姓名以及性别,姓名与性别要求中文输入输出。成绩包括三科,C语言,数学和英语

3、。本模块相当于信息添加模块。2.信息修改可以随意修改学生的学号,姓名,性别以及三科成绩。3.信息删除删除指定学生的所有信息。4.数据排序针对学生的成绩进行排序。5.数据统计对录入的数据进行规定方式的统计。三、系统分析与设计该程序主要由7个模块组成,分别是信息录入(添加)模块,信息编辑模块,信息删除模块,成绩录入模块,成绩修改模块,信息浏览模块以及信息统计模块。整体上使用数组进行控制,同时也使用了函数与结构体等共同实现各个模块的功能,整个模块通过主函数系统紧密地联系在一起。用链表实现文件之间的连接,通过指针、文件实现信息的及时存储与读取

4、。所用到的知识点如下图所示:所用到的知识系统的结构图如下图所示:学生信息管理系统结构图2、程序模块结构图主函数部分用do…while循环与switch语句控制,共设置9个功能键。如图所示。主函数模块流程图原始信息显示intsearch_id(void)用户所输入的i代表输入的学号,类型为整形,之后判断是否属于先前存储的数据,根据结果执行操作,给予不同的返回值,结束程序。如图所示。原始信息显示模块流程图基本信息录入模块voidstudent_new(void)基本信息录入模块流程图基本信息注销模块voidstudent_del(void

5、)基本信息注销模块流程图基本信息编辑模块voidstudent_del(void)基本信息注销模块流程图统计模块intcount()统计模块流程图成绩录入模块voidscore_input(void)为了更加符合实际,本模块与基本信息录入模块分开,因为在实际中,学生管理系统一定是先有学生注册,再有成绩,不可能一次完全录入。其次,每次录入一科成绩也考虑到了实际操作性。如果输入科目以外的序号,系统将自动调回主菜单。成绩录入模块流程图排序模块voidpaixu(charnn)本模块实现使用数字键操作可以对学号、单科成绩以及总分进行排序。其工

6、作原理和普通选择排序有所不同,事先定义新的中间变量,将已经录入的信息和数据全部存储到一个新的数组中,排序时,从该数组中提取数据,进行各种方式的排序,最终再存入一个数组,打印结果时,从该数组中提取相关信息与数据。这样避免了整个结构体的空间浪费,防止全部空量输出。排序模块与浏览模块相连接。排序模块流程图浏览模块voidbrowser(void)此部分设置变量k,作为排序方式的选择。判断数组中的内容,调用排序模块,再输出所有学生的信息。图5.2.9.1浏览模块流程图文件读写模块save_message(intn)&intread_messa

7、ge()在D盘下自动生成库文件,stud.txt,下一次打开程序时自动读入。四、详细设计及运行结果信息浏览模块中的不同排序方式五、调试情况,设计技巧及体会1.自我评价在本次课程设计中,加强了对C语言的了解与思考的能力,面对程序中出现的种种问题,都能仔细认真排查,最终找到较为合适的解决方案。可以心平气和的面对繁杂的代码,脚踏实地的一步一步分析与构架,虚心接受同学与指导老师的建议与意见,不断进步。但是,毕竟没有高级语言课程设计的经验,所以进度缓慢,思考速度不佳,并且思维容易陷进死胡同,这些都有待提高。2.程序分析本程序基于VC++6.0平

8、台编写,运用函数、数组、循环等知识将整体融合在一起。在函数模块构建部分,运用判断语句简化整个程序,调用与嵌套大大减少了不必要的代码。采取基本信息与成绩信息分离的方式,更加符合实际。设置单科排序方法,可以显而易见地看出学生

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。