1、 “C+C+程序设计”课程设计报告程序设计”课程设计报告 简单成绩管理系统设计简单成绩管理系统设计 姓 名: 班 级: 11 级电气工程及其自动化 4 班 学 号: 指导老师: 完成时间:2012 年 12 月 24 日 完成地点: 一、一、 基本信息基本信息 1、设计题目、设计题目 简单成绩管理系统。 2、设计目标及、设计目标及思想思想 设计出一个简单而精致的程序系统。掌握 C+中各个知识的综合运用,包括 类、 函数、 字符串的定义等重要众多的知识。 运用所学知识, 预先把握全局定位, 设计出简洁的程序语句,实现最为完美的应用系统。 二、二、程序程序设计要求设计要求 1、习题相关信息习题相关
2、信息 该系统有启动(按任意键)开始界面和退出界面。本系统是采用键式输入的 方法,选择和操作相应的功能(其中包括信息的录入、删除、查询、修改等一系 列操作。 ) 2 2、此此设计所要求具有的功能设计所要求具有的功能及其分析及其分析 (1) 、) 、系统主要的功能系统主要的功能菜单菜单 1 录入学生成绩 2 修改学生成绩 3 统计学生成绩 4 查询学生成绩 5 显示学生成绩 0 安全退出系统 (2) 、各个菜单选项的功能分析) 、各个菜单选项的功能分析 录入学生成绩需要分别录入学号(若重复,则有提示学号已存在) 、姓名、性 别、年龄、学院、年级、和专业及三科的成绩。 修改学生信息必须是在已录入的学
3、生信息中才可以进行修改, 修改的范围可以 是所录入的任一部分。 统计学生成绩是对用户所录入的信息进行简单的分析及保存其统计结果, 用户 可以随时调出其进行查看。 可以通过查询对已录入的学生信息进行调出查询。 显示学生成绩可以对已经录入的学生信息进行直观的审视。 安全退出系统可以让操作者安全退出系统, 保护系统内部信息不被丢失及损坏。 三、各个功能的详细分析三、各个功能的详细分析 1、录入学生成绩、录入学生成绩 分别录入的是学号(若重复,则有提示学号已存在) 、姓名、性别、年龄、 学院、年级、和专业及三科的成绩及录入信息截图。具体程序如下: Student * Next; void Input(
4、) strcpy(Id,q); coutname; coutsex; coutold; coutschool; coutnj; coutzy; coutCnum; coutMnum; coutEnum; sum=Cnum+Mnum+Enum; void ReadFile(istream 2、修改学生成绩、修改学生成绩 主要是对输入的学生信息进行修改,则修改程序如下: void Studentmassage:ModifyItem() /修改信息 char name20; Student * p=NULL; coutInput(); coutNext) for(k=p-Next;k!=End;k=
5、k-Next) if(p-sumk-sum) Studentmassage:Swap(p,k); cout x; switch(x) case 1: coutNext-Show(); coutId; if(p=FindID(Id) p-Next-Show(); coutname; if(p=FindItem(name) temp=p-Next; p-Next=p-Next-Next; delete temp; coutNext) outId;strcpy(q,Id); while(p=FindID(Id) coutId;strcpy(q,Id); 在其中 find(2)是我们重新定义的,它的主
6、要功能是是否可以再已存在的 Id 中(即学号)找到对应的 Id,若找到的话,则会提示“学号已存在,请重新 输入学号。 ” 。需要我们重新输入不同的学号,方可执行下一步。实现此功能主要 是 while 循环的使用及拷贝函数的使用。 (2)实现不及格科目的显示)实现不及格科目的显示 在此系统的 void show() 中,根据要求,我们设计了实现输入成绩小于 60 的给予显示,显示哪个为不及格科目,这之上的是显示学生的各类信息,具 体是第 6-显示学生信息 部分。主要是 if 语句的应用。程序如下: Void show() if(Cnum60) cout“C+课程不及格.“endl; if(Mnum60) cout“大学英语不及格.“endl; if(Enum60) cout“模拟电子技术基础不及格.“en