您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > C语言程序设计课程设计报告内容
惠州学院电子科学系《C程序设计》课程设计姓名:学号:班级:二0一0年十二月成绩管理系统——C语言实现1目录1引言..............................................................................................................................................22设计与实现..................................................................................................................................32.1设计内容及选题依据.......................................................................................................32.2设计方法...........................................................................................................................32.3设计过程...........................................................................................................................32.3.1需求........................................................................................................................32.3.2功能设计................................................................................................................32.3.3功能细化................................................................................................................42.3.4功能实现................................................................................................................92.4结果分析.......................................................................................................................1172.4.1功能模块测试....................................................................................................1172.4.2测试结果分析......................................................................................................203结论............................................................................................................................................214参考文献....................................................................................................................................22成绩管理系统——C语言实现21引言为了巩固并深化本学期所学c语言程序设计知识,同时对软件开发过程有一个感性的认识,为以后的软件开发工作打下良好的基础,我们设计并实现了一个小型的成绩管理――文件检索系统。该系统具有将输入的数据(学生的学号、姓名和成绩)以文件形式保存、根据学号查询成绩及根据姓名查询成绩、显示指定文件中的数据以及对指定文件的数据进行统计分析的功能,并为用户提供了简单的人机界面。具体的设计实现基于结构化程序设计的思想,应用了高级语言程序设计中的基本控制结构、函数等内容,同时包含了软件开发过程的基本理论。该文件检索系统的开发语言是C语言,开发工具是TURBOC2.0。本文主要工作是首先对成绩管理――文件检索系统进行需求分析;其次阐述了结构化程序设计的基本思想;然后在需求分析的基础上,详细描述了整体设计过程,包括功能模块的设计以及相应的实现;最后对测试结果进行分析并得出结论。成绩管理系统——C语言实现32设计与实现2.1设计内容及选题依据本项目的主要内容是设计并实现一个文件检索系统。文件检索作为一种一般的数据检索方式,有着很高的实用价值。设计并实现文件检索系统可以将c语言中的大部分知识进行融会贯通。该文件检索系统具有将输入的数据(学生的学号、姓名和成绩)以文件形式保存、根据学号或者姓名查询成绩、显示指定文件中的数据以及对指定文件的数据进行统计分析的功能,并为用户提供简单易操作的人机界面。2.2设计方法采用结构化的程序设计方法:自顶向下、逐步细化、模块化设计、结构化编码。模块划分符合以下三条基本要求:1、模块在功能上尽可能地单一化、明确化,即模块地凝聚性。2、模块之间的联系及互相影响尽可能地少,尽量避免逻辑耦合,而仅限于数据耦合。3、模块的规模应当足够小,易于调试。结构化编码:顺序结构、选择结构、循环结构。结构化程序设计方法保证了软件的可靠准确度及易于修改,但是增大了程序工作量,降低了程序的运行效率。2.3设计过程2.3.1需求为用户提供进行功能选择的界面。功能选择包括输入数据(学生的学号、姓名和成绩)并存入文件、根据学号查询成绩、根据姓名(英文)查询成绩、显示文件中的所有数据及结束程序运行。根据用户的选择,进入相应的操作界面。根据界面的提示,输入相应的数据。为用户返回正确的运行结果。要求界面友好。2.3.2功能设计2.3.2.1模块划分模块1:功能选择模块;模块说明:选择创建新文件、按学号查询、按姓名查询或退出;模块2:创建新文件模块;模块说明:将输入的数据(学号、姓名、成绩等)保存到文件中;模块3:按学号查询成绩模块;模块说明:根据输入的学号到指定文件中进行成绩查询;模块4:按姓名查询成绩模块;模块说明:根据输入的姓名到指定文件中进行成绩查询;模块5:显示文件中的所有数据;模块说明:显示指定文件中的所有数据;模块6:对成绩进行统计分析;模块说明:统计及格人数、及格率,优秀人数、优秀率;(可选模块)成绩管理系统——C语言实现42.3.2.2系统结构2.3.2.3系统整体流程2.3.3功能细化将以上的各功能模块细化,并画出流程图:2.3.3.1功能选择模块说明:流程图:开始功能选择按学号查询成绩数据保存退出结束按姓名查询成绩按姓名查询成绩按学号查询成绩数据保存模块文件检索系统功能选择模块文件内容输出模块统计分析模块文件内容输出数据统计分析成绩管理系统——C语言实现5NY2.3.3.2数据保存模块说明:首先,创建一个新文件;其次,输入各项记录内容(包含学号、姓名和成绩,当输入的学号为0时停止输入)并写到文件中;最后,显示文件内容。流程图:YYN文件打开否?结束打开上述文件输出文件内容读文件开始输入文件名创建并打开文件N学号≤0?YYN文件打开否?输入学号输入姓名、成绩关闭文件写文件学号重复?≤0?成绩管理系统——C语言实现6YN2.3.3.3按学号查询成绩模块说明:在指定的文件中,根据用户输入的学号查询该生的成绩,并返回相应的信息。流程图:YNY继续查询否?结束关闭文件学号是否相同?输出学号、姓名、成绩设置找到标记开始输入文件名关闭文件文件名打开文件(只读)YN文件打开否?输入待查学号文件结束否?读出学号.姓名.成绩如果没有找到处理成绩管理系统——C语言实现72.3.3.4按姓名查询成绩模块说明:在指定的文件中,根据用户输入的姓名查询该生的成绩,并返回相应的信息。流程图:与前一模块相似,略。2.3.3.5文件内容输出模块说明:分页显示指定文件的内容,显示时可由用户控制是继续显示下一页还是结束。流程图:NYYNNYYN本页已显示记录数置0显示错误信息(只读)关闭文件开始输入文件名关闭文件文件名打开文件(只读)文件打开否?满一页否?文件结束否?本页已显示的记录数增加1,移向文件的下一条记录读取并显示记录内容显示下页?结束成绩管理系统——C语言实现82.3.3.6统计模块说明:统计指定文件中学生的及格人数、优秀人数及所占的百分率。流程图:NYNYNYNY开始输入文件名关闭文件文件名打开文件(只读)文件打开否?文件结束否?总人数加1,移向文件的下一条记录显示错误信息(只读)读取当前记录成绩=60?及格人数加1成绩=90?优秀人数加1结束及格人数等变量初始化关闭文件计算及格率、优秀率输出结果关闭文件文件名成绩管理系统——C语言实现92.3.4功能实现各个功能模块的实现(以程序代码形式表示)。2.3.4.1功能选择模块的实现#includestdio.h#includestring.hstructStuType{charNo[10];charXm[10];floatCj_En;floatCj_Mat;floatCj_Cir;floatCj_C;floatCj_Lin;};typedefstructStuTypeStuType;char*DataFile=D:\\090705124.XLS;intJy_No(char*Stu_NO,FILE*FP);intJy_Cj(floatStu_Cj);intJy_Xm(char*Stu_Xm);voidData_Dispn(char*DataFileName,intn);voidData_Disp(char*DataFileName);voidData_Stu(StuTypeStu);/******************************************主函数*******************************************/main(){intchoice;FILE*fp;do{clrscr();fp=fopen(DataFile,ab+);/*按追加可读写方式打开文件*/if(!fp){printf(数据文件不能打开,操作失败!!!\n);return;}printf(******************************************************************************\n);成绩管理系统——C语言实现10printf(**请选择系统功能!**\n);/*请选择系统功能!*/printf(*1输入数据!-----------------------------------------------**\n);/*1输入数据!*/printf(*2显示数据!-----------------------------------------------**\n);/*2显示数据!*/printf(*3按姓名查
本文标题:C语言程序设计课程设计报告内容
链接地址:https://www.777doc.com/doc-3209980 .html