学生成绩管理系统C++课程设计课程设计.doc

上传人:仙人指路1688 文档编号:3941698 上传时间:2023-03-28 格式:DOC 页数:11 大小:50.50KB
返回 下载 相关 举报
学生成绩管理系统C++课程设计课程设计.doc_第1页
第1页 / 共11页
学生成绩管理系统C++课程设计课程设计.doc_第2页
第2页 / 共11页
学生成绩管理系统C++课程设计课程设计.doc_第3页
第3页 / 共11页
学生成绩管理系统C++课程设计课程设计.doc_第4页
第4页 / 共11页
学生成绩管理系统C++课程设计课程设计.doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

《学生成绩管理系统C++课程设计课程设计.doc》由会员分享,可在线阅读,更多相关《学生成绩管理系统C++课程设计课程设计.doc(11页珍藏版)》请在三一办公上搜索。

1、学生成绩管理系统-C+课程设计-课程设计学生成绩管理系统-C+课程设计目录一、设计题目1二、设计目的1三、设计分析1四、总体设计:2五、详细设计4六、系统调试6七、结论:6附录:源代码6一、设计题目学生成绩管理系统二、设计目的这次课程设计的目的是让学生运用已学过的知识进行一个简单的应用程序的开发,使学生能够基本掌握设计课题的基本步骤和方法,应用系统开发中的需求分析与数据库设计方法,应用系统开发中数据库设计相关文档的编制等。本课程设计为学生提供了一个既动手又原文请找 动脑、自学、查资料、独立实践的机会。实现对学生个人信息的录入、增加、删改、查询和输出等操作,将本学期课本上的理论知识和实际有机的结

2、合起来,锻炼学生实际分析问题和解决问题的能力,提高学生适应实际,实践编程的能力,使对C+系统编程有一个大致的了解。三、设计分析1、成绩管理系统需求:(1)学生的属性:1)一个学生;2)多项关于此学生的信息(姓名name,学号number,C+成绩cpro,英语成绩english,数学成绩math,体育成绩sport,法律基础成绩law,汇编语言成绩hbpro,微机原理成绩computer)。(2)对学生信息的操作: 1)能够录入学生信息(如姓名、学号、C+成绩、英语成绩、数学成绩、体育成绩、法律基础成绩、汇编语言成绩、微机原理成绩等);2)能够增加学生信息;3)能够修改学生信息;4)能够对学生

3、信息进行查询(包括按学号查询和按成绩查询);5)能够输出所有学生的信息;2、设计模块分析:(1)用户界面设计;(2)输入数据模块设计;(3)增加数据模块设计;(4)修改数据模块设计;(5)查询数据模块;(6)输出所有学生信息模块;(7)退出系统模块。四、总体设计:1、程序功能简介:用switch语句分别执行0-6操作指令,即输入数据、增加数据、修改数据、按姓名查询、按学号查询、输出所有学生的成绩、退出系统等操作;1)当输入0操作指令时,执行输入数据操作,可根据提示录入学生信息,并开辟一个动态存储区域,数据输入完成后,输出语句数据输入成功,想继续输入吗(y/n):可选择是否继续输入信息,若是,则

4、继续输入,若不是,则可选择另一个操作指令。2)当输入1操作指令时,执行增加数据操作,增加数据操作后开辟一个动态存储区域,输出语句数据输入成功,想继续输入吗(y/n):若是,则继续输入,若不是,则可选择另一个操作指令。3)当输入2操作指令时,执行修改数据操作,若之前没有录入信息,则输出管理系统中没有输入数据!;当修改数据操作指令出错时,输出语句您要修改的学生本来就不存在!请检查重新输入!想继续修改吗(y/n):若是,则继续修改,若不是,则可选择另一个操作指令。4)当输入3操作指令时,执行按姓名查询操作,输入要查询的学生姓名即可进行查询,若之前没有录入学生信息,则输出管理系统中没有输入数据!,若输

5、入的学生姓名不存在,则输出对不起!您要查询的学生不存在! 您想继续查询吗?(y/n):,若是,则继续查询,若不是,则可选择另一个操作指令。5)当输入4操作指令时,执行按学号查询操作,输入要查询的学生学号即可进行查询,若之前没有录入学生信息,则输出管理系统中没有输入数据!,若输入的学生学号不存在,则输出对不起!您要查询的学生不存在! 您想继续查询吗?(y/n):,若是,则可继续查询,若不是,则可选择另一个操作指令。6)当输入5操作指令时,执行输出所有学生成绩操作指令,输出本系统所有学生数据如下:,若之前没有录入学生信息。则输出管理系统中没有输入数据!,否则输出所有学生信息。7)当输入6操作指令时

6、,执行退出操作系统操作。2、总体程序功能设计:(1)在main()函数中先输出清晰、友好的界面,界面主要功能如下:1)输入数据2)增加数据3)修改数据4)按姓名查询5)按学号查询6)输出所有学生的成绩7)退出系统(2)定义一个学生(student)类,包括姓名、学号、C+成绩、英语成绩、数学成绩、体育成绩、法律基础成绩、汇编语言成绩、微机原理成绩,内嵌构造函数,去初始化被声明的对象,用friend声明了的main()函数即为student类的友元函数,可以访问student类的任何私有成员。(3)用do语句 /循环体 While(判断表达式);结构判断输入指令是否有效,当指令无效时,输出“指令

7、错误!请重新输入:”,并循环至指令有效,进行下一步操作。(4)用switch语句,当输入0-6操作指令时,分别执行输入学生信息、增加学生信息、修改学生信息、按姓名查询学生信息,按学号查询学生信息、输出学生信息、退出操作系统等操作。1393学生成绩管理系统-C+课程设计五、详细设计1、用户界面设计如下:*欢迎进入学生成绩管理系统!* 学生成绩管理系统 *0、输入数据 *1、增加数据 *2、修改数据 *3、按姓名查询 * *4、按学号查询 *;*5、输出所有学生的成绩 *6、退出系统 *选择0-6数字进行操作=2、定义student类:(1)student类的定义class student pri

8、vate: char name20; /姓名 double cpro,engli原文请找 sh,math,sport,law,hbpro,computer;/课程 int order, number; /名次,学号 public: student() student(char n20,int nu,double cc,double eng,double ma,double sp,double l,double hb,double com) strcpy(name,n); number=nu; cpro=cc; english=eng;math=ma;sport=sp;law=l;hbpro=h

9、b;computer=com; friend void main();(2)内嵌构造函数student(char n20,int nu,double cc,double eng,double ma,double sp,double l,double hb,double com) strcpy(name,n); number=nu; cpro=cc; english=eng;math=ma;sport=sp;law=l;hbpro=hb;computer=com; 初始化被声明的对象,(3)friend void main();用friend声明main()函数为student类的友元函数,可访

10、问student类的任何私有成员。3、判断指令是否有效:do /flag判断输入是否有效 cinp; if(p=0&p=6) flag=1; else cout 指令错误!请重新输入:endl; while(flag=0);4、对学生信息操作的各项功能实现:switch(p) /接收功能选项case0: /输入数据case1: /增加数据case2: /修改数据case3: /按姓名查询case4: /按学号查询case5: /输出case6: /退出 六、系统调试在定义student类时,没有用friend声明main()函数为这个类的友元函数,student类的私有成员不能被main()函

11、数访问,声明了友元函数后,main()函数不仅可访问student类中的公开成员,而且可以访问它的任何私有成员,免去再调用类的成员函数所需的开销,提高程序的效率。七、结论:这次C+课程设计让我可以将书本的知识应用到实际编程中,让我体验到了实战的感觉,在实践中积累了宝贵的经验,使我对此门课充满了兴趣,也学到了很多知识,C+在社会中的用处也随处可见,它的作用也是不会被忽视的。在编程过程中,我曾遇到很多问题,也失败了很多次,不过最终在老师的指导下,在同学的帮助下,并通过自己坚持不懈的努力,较为理想的完成了。在这次课程设计的过程中,在老师的精心指导下,我的编程,理解,动手及思维能力有了提高,同时也了解

12、到若想完满的完成任务需坚持不懈的努力,不要轻言放弃,也很深刻的认识到团队合作的重要性。附录:源代码#include#include#include#include#includeclass student private: char name20; /姓名 double cpro,english,math,sport,law,hbpro,computer;/课程 int order, number; /名次,学号 public: student() student(char n20,int nu,double cc,double eng,double ma,double sp,double l

13、,double hb,double com) strcpy(name,n); number=nu; cpro=cc; english=eng;math=ma;sport=sp;law=l;hbpro=hb;computer=com; friend void main();void main()cout *欢迎进入学生成绩管理系统!*endl;cout *endl; cout * 学生成绩管理系统 *endl;cout *endl;cout *原文请找 *endl;cout *0、输入数据 *endl;cout *1、增加数据 *endl;cout *2、修改数据 *endl;cout *3、按

14、姓名查询 *endl;cout *4、按学号查询 *endl;cout *5、输出所有学生的成绩 *endl;cout *6、退出系统 *endl;cout *endl;cout 选择0-6数字进行操作endl;cout =p; if(p=0&p=6) flag=1; else cout 指令错误!请重新输入:endl;while(flag=0);do switch(p) /接收功能选项 case 0: /输入数据 char c; char name20;int number;double cpro,english,math,sport,law,hbpro,computer; do cout

15、请输入姓名:; coutcpro; coutendlenglish; coutendlmath; coutendlsport; coutendllaw; coutendlhbpro; coutendlcomputer; coutendl; filej=new ofstream(D:,ios:ate); *filej 姓名 name 学号 number C+成绩 cpro 英语成绩 english 数学成绩 math 体育成绩 sport 法律基础成绩 law 汇编成绩 hbpro 微机原理成绩 computerendl; j+; si=new student(name, number,cpro

16、,english,math,sport,law,hbpro,computer); i+; coutc; coutendl; do if(c!=y&c!=n) cout 指令错误!请重新输入!endlc; else flag=1; while(flag=0); while(c=y); break; case 1: /增加数据 char name20; int number;double cpro,english,math,sport,law,hbpro,computer; char c; do coutname; coutendlnumber; coutendlcpro; coutendlen原

17、文请找 glish; coutendlmath; coutendlsport; coutendllaw; coutendlhbpro; coutendlcomputer; coutendl; filej=new ofstream(d:,ios:ate); *filej 姓名 name 学号 number C+成绩 cpro 英语成绩 english 数学成绩 math 体育成绩 sport 法律基础成绩 law 汇编成绩 hbpro 微机原理成绩 computerendl; j+; si=new student(name, number, cpro,english,math,sport,law

18、,hbpro,computer); i+; coutc; coutendl; if(c!=y&c!=n) cout 指令错误!请重新输入!endlc; while(c=y); char name20;int nu;double cc,eng,ma,sp,l,hb,com;flag=0; char c; if(i=0) cout 管理系统中没有输入数据!endl;break; do coutname; coutendl; for(int h=0;hname)=0) flag=1; coutnu; coutendlcc; coutendleng; coutendlma; coutendlsp; c

19、outendll; coutendlhb; coutendlcom; coutcpro=cc; sh-english=eng; sh-math=ma; sh-sport=sp; sh-law=l; sh-hbpro=hb; sh-computer=com; sh-number=nu; cout 数据修改成功!endl; if(flag=0) cout 您要修改的学生本来就不存在!请检查重新输入!endl; coutc; coutendl; if(c!=y&c!=n) cout 指令错误!请重新输入!endlc; while(c=y); break原文请找 ; case 3: /按姓名查询 ch

20、ar n20;int j=0;char c; if(i=0) cout 管理系统中没有输入数据!endl;break; do int flag=0; coutn; coutendl; for(int j=0;ji;j+) flag=1; cout 您要查询的学生是:(*sj).nameendl; cout(*sj).name的成绩是: C+: (*sj).cpro 英语: (*sj).english 数学:(*sj).math 体育:(*sj).sport 法律:(*sj).law 汇编:(*sj).hbpro 微机原理 (*sj).computerendl; if(flag=0) cout

21、对不起!您要查询的学生不存在!endl; coutc; coutendl; if(c!=y&c!=n) cout 指令错误!请重新输入!c; while(c=y); break; case 4: /按学号查询 int n,j=0;char c; if(i=0) cout 管理系统中没有输入数据!endl;break; do int flag=0; coutn; coutendl; for(int j=0;jnumber=n) flag=1; cout 您要查询的学生是:(*sj).nameendl; cout(*sj).name的成绩是: C+:(*sj).cpro 英语:(*sj).engl

22、ish 数学:(*sj).math 体育:(*sj).sport 法律:(*sj).law 汇编:(*sj).hbpro 微机原理 (*sj).computerendl; if(flag=0) cout 对不起!您要查询的学生不存在!endl; coutc; coutendl; if(c!=y&c!=n) cout 指令错误!请重新输入!c; while(c=y); break; case 5: /输出 cout 本系统所有学生数据如下:endl; if(i=0)原文请找QQ3.249.114 cout 管理系统中没有输入数据!endl; cout 姓名 学号 c+ 英语 数学 体育 法律基础

23、 汇编语言 微机原理 endl; for(int k=0;ki;k+) coutnamesetw(7)numbersetw(6) (*sk).cprosetw(6)(*sk).englishsetw(6) (*sk).mathsetw(6)(*sk).sportsetw(7) (*sk).law setw(10)(*sk).hbprosetw(10)(*sk).computersetw(10)w; coutendl;if(w!=y&w!=n) cout 指令错误!请重新输入!endl; else flag=1;while(flag=0);if(w=y)cout 请输入操作代码:0 输入数据endl;cout 1 增加数据endl;cout 2 修改数据endl;cout 3 按姓名查询endl;cout 4 按学号查找endl;cout 5 输出所有学生成绩endl;cout 6 退出系统p;

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号