《学生成绩管理系统开发与设计》由会员分享,可在线阅读,更多相关《学生成绩管理系统开发与设计(8页珍藏版)》请在金锄头文库上搜索。
1、一、设计题目学生成绩管理系统的开发与设计二、设计目的这次课程设计的目的是让学生运用已学过的知识进行一个简单的应用程序 的开发,使学生能够基本掌握设计课题的基本步骤和方法,应用系统开发中的 需求分析与数据库设计方法,应用系统开发中数据库设计相关文档的编制等。本课程设计为学生提供了一个既动手又动脑、自学、查资料、独立实践的 机会。实现对学生个人信息的录入、增加、删改、查询和输出等操作,将本学 期课本上的理论知识和实际有机的结合起来,锻炼学生实际分析问题和解决问 题的能力,提高学生适应实际,实践编程的能力,使对C+系统编程有一个大致 的了解。三、设计分析1、成绩管理系统需求:(1)学生的属性:1)一
2、个学生;2)多项关于此学生的信息(姓名name学号number,C+成绩cpro,英语 成绩english,数学成绩math,体育成绩sport,法律基础成绩law,汇编语言 成绩hbpro,微机原理成绩 computer)。(2)对学生信息的操作:1) 能够录入学生信息(如姓名、学号、C+成绩、英语成绩、数学成绩、 体育成绩、法律基础成绩、汇编语言成绩、微机原理成绩等);2)能够增加学生信息;3)能够修改学生信息;4) 能够对学生信息进行查询(包括按学号查询和按成绩查询);5)能够输出所有学生的信息;2、设计模块分析:(1用户界面设计;(2) 输入数据模块设计;(3) 增加数据模块设计;(4
3、) 修改数据模块设计;(5) 查询数据模块;(6) 输出所有学生信息模块;(7) 退出系统模块。四、总体设计:1、程序功能简介:用switch语句分别执行0-6操作指令,即输入数据、增加数据、修改数据、 按姓名查询、按学号查询、输出所有学生的成绩、退出系统等操作;1) 当输入0操作指令时,执行输入数据操作,可根据提示录入学生信息, 并开辟一个动态存储区域,数据输入完成后,输出语句 数据输入成功,想继续 输入吗(y/n):可选择是否继续输入信息,若是,则继续输入,若不是,则可选 择另一个操作指令。2) 当输入1操作指令时,执行增加数据操作,增加数据操作后开辟一个动 态存储区域,输出语句数据输入成
4、功,想继续输入吗(y/n):若是,则继续输 入,若不是,则可选择另一个操作指令。3) 当输入2操作指令时,执行修改数据操作,若之前没有录入信息,则输出管理系统中没有输入数据!;当修改数据操作指令出错时,输出语句您要 修改的学生本来就不存在!请检查重新输入!想继续修改吗(y/n):若是,则 继续修改,若不是,则可选择另一个操作指令。4) 当输入3操作指令时,执行按姓名查询操作,输入要查询的学生姓名即 可进行查询,若之前没有录入学生信息,则输出管理系统中没有输入数据!, 若输入的学生姓名不存在,则输出对不起!您要查询的学生不存在!您想继续 查询吗?(y/n):,若是,则继续查询,若不是,则可选择另
5、一个操作指令。5) 当输入4操作指令时,执行按学号查询操作,输入要查询的学生学号即 可进行查询,若之前没有录入学生信息,则输出管理系统中没有输入数据!, 若输入的学生学号不存在,则输出对不起!您要查询的学生不存在!您想继续查询吗?(y/n):,若是,则可继续查询,若不是,则可选择另一个操作指令。6) 当输入5操作指令时,执行输出所有学生成绩操作指令,输出 本系统 所有学生数据如下:,若之前没有录入学生信息。则输出管理系统中没有输 入数据!,否则输出所有学生信息。7)当输入6操作指令时,执行退出操作系统操作。2、总体程序功能设计:(1在main()函数中先输出清晰、友好的界面,界面主要功能如下:
6、1)输入数据2)增加数据3)修改数据4)按姓名查询5)按学号查询6)输出所有学生的成绩7)退出系统(2)定义一个学生(student )类,包括姓名、学号、C+成绩、英语成绩、 数学成绩、体育成绩、法律基础成绩、汇编语言成绩、微机原理成绩,内嵌构造函数,去初始化被声明的对象,用friend声明了的main()函数即为student 类的友元函数,可以访问student类的任何私有成员。(3)用 do语句循环体While(判断表达式);结构判断输入指令是否有效,当指令无效时,输出“指令错误!请重新输 入:”,并循环至指令有效,进行下一步操作。(4)用switch语句,当输入0-6操作指令时,分别
7、执行输入学生信息、 增加学生信息、修改学生信息、按姓名查询学生信息,按学号查询学生信息、 输出学生信息、退出操作系统等操作。附录:1、用户界面设计如下:共13页第3页*欢迎进入学生成绩管理系统!* 学生成绩管理系统 *0、输入数据*1、增加数据*2、修改数据*3、按姓名查询*4、按学号查询*;*5、输出所有学生的成绩*6、退出系统*选择0-6数字进行操作2、定义 student 类:(1)student类的定义class stude nt private:char n ame20; /姓名课程en g,doubledouble cpro,e nglish,math,sport,law,hbpr
8、o,computer;int order, nu mber; /名次,学号public:stude nt()stude nt(charn 20,i ntnu ,double cc,doublema,double sp,double l,double hb,double com)strcpy( name, n);nu mber =nu;cpro=cc;en glish=e ng;math=ma;sport=sp;law=l;hbpro=hb;computer=com;friend void mai n();;内嵌构造函数stude nt(charn 20,i ntnu ,double cc,do
9、uble en g,double ma,doublesp,double l,double hb,double com)strcpy( name, n);nu mber =nu;cpro=cc;en glish=e ng;math=ma;sport=sp;law=l;hbpro=hb;computer=com;初始化被声明的对象,(3)friendvoid main();用 friend 声明 main()函数为 student 类的友元函数,可访问student类的任何私有成员。3、判断指令是否有效:do/flag判断输入是否有效cin p;if(p=0&p=6)flag=1;elsecoutvv指令错误!请重新输入:e ndl;while(flag=0);4、对学生信息操作的各项功能实现:switch(p)/接收功能选项case 0:/输入数据case 1:/增加数据case 2:/修改数据case 3:/按姓名查询case 4:/按学号查询case 5:/输出case 6:/退出共13页 第