1、 课课 程程 设设 计计 报报 告告 课程名称 数据结构 设计题目 学生成绩管理系统 专 业 计算机科学与技术 班 级 学 号 姓 名 完成日期 2012 年 6 月 7 号 课课 程程 设设 计计 任任 务务 书书 设计题目:设计题目:学生成绩管理系统 _ 设计内容与要求:设计内容与要求: 1各种基本数据结构的逻辑结构、存储结构和运算的实现。 2数据结构与算法的设计方法的训练。 3软件开发过程的问题分析、系统设计、程序编码、测试等基本方法 和技能的训练; 4 综合运用所学的理论知识和方法独立分析和解决问题的能力的训练; 5用系统的观点和软件开发一般规范进行软件开发,培养软件工作者 所应具备的
2、科学的工作方法和作风的训练。 指导教师: 年 月 日 课课 程程 设设 计计 评评 语语 成绩:成绩: 指导教师:_ 年 月 日 1 一、问题描述 编写一个简单的学生信息管理程序,能实现对学生信息的简单管理。 二、基本要求 建立一个 4 个学生的信息登记表,每个学生的信息包括:学号,姓名,和 3 门课程的成绩(FOX,C,ENGLISH) 。 程序运行时显示一个简单的菜单,例如: (1)信息输入(INPUT) (2)总分统计(COUNT) (3)总分排序(SORT) (4)查询(QUERY)输入要求: 三、测试数据 其中: (1)对 4 个学生的信息进行输入; (2)对每个学生的 3 门课程统
3、计总分; (3)对 4 个学生的总分按降序排序并显示出来; (4)查询输入一个学号后,显示出该学生的有关信息; 。 四、算法思想 信息输入:采用数组的形式把自己输入的那些关于学生信息的资料存储 起来,以便于以后的应用。 打印显示:把那些已经录入的学生信息按录入的顺序输出来检查是否有 错。 修改和删除模块:录入的那些信息按要求删除和修改。 查询模块:按姓名查询和按学好查询,都是把他们和原来的那些数据进 行比较就可以查找。 最后就是总分排序的模块 五、数据结构 学生成绩管理的数据类型: struct stu char name20; int num; 2 ; struct dom int zong
4、_num; int shu_num; int ying_num; int c_num; struct stu st;sMAX,p; 六、测试情况 1、主菜单界面: 2、录入学生信息时候的界面: 3 3、查询模块的操作页面: 4 4、总分排序的操作界面: 七、心得: 在选择题目的时候我就想了,我可以把原来的程序给改了,可是我还是想的太 简单了,修改一个程序不是那么的简单的,有时候还会把他给复杂化,因为原来 的程序都会有好多的不能用的语句,需要把他们一句一句的都给删掉,原来多余 的也要删掉,还有的可要可不要的程序,有时候自己都拿不准要不要了,起步的 时候还是有这样或者那样的一些不对的东西,程序的错
5、误是在所难免的,我们要 一步一步的去施行,去修改,没有免费的午餐,有时候调程序的时候就好几个小 时坐在那里不动一动,自己的脖子就会很痛很痛。不过在调出来程序的时候一切 都是值得的。当你成功时候的那种喜悦,和别人羡慕的表情中,感觉自己很伟大。 当然在自己调程序的时候感觉自己对程序的了解有了质的飞跃。不是每个人都有 这样的机会的。 八、源程序 #include #include “string.h“ #define MAX 10 #define PRINT1 printf(“-n“) #define PRINT2 printf(“学号-学生姓名-数学成绩-英语成绩-c 语言成绩nn“) 5 int sum; struct stu char name20;int num; struct dom int zong_num, shu_num, ying_num, c_num; struct stu st;sMAX,p; save_message()/*保存信息*/ FILE *fp; int i; if(fp=fopen(“dom.txt“,“wt“)=NULL