1、五 总体设计(包含几大功能模块).5六 详细设计(各功能模块的具体实现算法流程图).6七 调试分析(包含各模块的测试用例,及测试结果).7八 总结.8十 参考资料.9一 设计目的进一步加深、巩固所学专业课程(C语言程序设计)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用C语言独立地编写、调试应用程序和进行其它相关设计的技能。二 课程设计的内容对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集
2、到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。三 课程设计的要求与数据1、用C语言实现系统;2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能:(1) 每一条记录包括一个学生的学号、姓名、3门课成绩(2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录的输入。)(3)、成绩信息显示浏览功能:完成全部学生记录的显示。(4)
3、、查询功能:完成按姓名查找学生记录,并显示。(5)成绩信息的删除:按学号进行删除某学生的成绩.(6)、排序功能:按学生平均成绩进行排序。(7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!四 课程设计应完成的工作(1)编写算法;(2)算法测试,并有具体的测试结果和结果分析;(3)撰写课程设计报告。内容包括:1)封面扉页2)设计任务书3)目录4)总体设计方案(包括流程图)5)使用说明及运行实例(包括界面)6)成员设计内容简介7)项目源程序代码(注意注释的使用)8)指导教师评语五 总体设计(包含几大功能模块) 1、成绩录入功能2、成绩输出功能3、成绩查询功能4、删除
4、模块 5、排序功能 6、统计功能 7、退出系统六 详细设计(各功能模块的具体实现算法流程图)各函数的功能和实现1、输入初始的学生信息:输入信息包括学生的姓名、学号以及学生的成绩等相关信息;可用函数void input(STUDENT *data, int *len)来实现此操作。2、成绩输出模块:输出学生的信息以及成绩void output(STUDENT *data, int len):通过学生的姓名来查看学生的相关成绩,同时也可以分别通过caverage()?、maverage()?、eaverage()?和comaverage()?来输出成绩的平均分数、最高和最低分数。3、成绩查询模块:
5、可用void find(STUDENT *data, int len)?来实现。找到就输出此学生全部信息。4、删除模块:用函数void delete_item(STUDENT *data, int *len)来实现5、排序模块:用函数void sort(STUDENT *data, int len)来实现6、统计功能能:用函数void stat(STUDENT *data, int len) 来实现7、退出系统:可用一个函数exit()来实现,首先将信息保存到文件中,释放动态创建的内存空间,再退出此程序。 如图 图 七 调试分析(包含各模块的测试用例,及测试结果)源程序#include #de
6、fine MAXN 35#define MAX_NAME 256typedef struct student ; printf(%sn, 格式:n学号n);姓名 语文 数学 英语 putchar(n如:n1n杨江彬 93 95 89n scanf(%d, &no); while(no != -1) data*len.no = no; scanf(%s %lf %lf %lf, data*len.name, &data*len.Chinese, &data*len.math,&data*len.English); data*len.mark_ave=(data*len.Chinese+data*
7、len.math+data*len.English)/; data*len.mark_tot=data*len.Chinese+data*len.math+data*len.English; (*len)+; /*-输出信息子程序-*/void output(STUDENT *data, int len) int i; system(cls%8s学号姓名语文数学%10s英语%12s平均分总分 for (i =0; i 80; i+)= for (i = 0; i len; %8d, datai.no);, datai.name);%, datai.Chinese);, datai.math);
8、, datai.English);, datai.mark_ave);, datai.mark_tot); 按回车键继续. getchar();/*-排序子程序-*/void sort(STUDENT *data, int len) int i,j,k; STUDENT temp; for (i=0;len-1; i+) for (k=i, j=i+1; j dataj.mark_ave) k=j; if (k != i) temp = datai; datai = datak; datak = temp; /*-搜索子程序-*/void find(STUDENT *data, int len
9、) int find_no, result ;lab: result=0; printf(请输入需要查找的学生的学号,退出当前菜单请输入 -1.find_no); if (find_no = -1) return; /*exit the fine sub program*/ while( dataresult.no != find_no & result = len ) printf(未查询到相关信息 goto lab; else system(查询信息如下: for (i =0; putchar( putchar(, dataresult.no);, dataresult.name);, dataresult.Chinese);, dataresult.math);, dataresult.English);, dataresult.mark_ave);, dataresult.mark_tot);for (i =0;/*-插入子程序-*/void insert(STUDENT *data, int *len) int no, pos; double Chinese, math, English, mark_ave, mark_tot; char nameMAX_NAME;,
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1