C++课程设计(学生管理系统).doc

上传人:scccc 文档编号:14175915 上传时间:2022-02-03 格式:DOC 页数:16 大小:256KB
返回 下载 相关 举报
C++课程设计(学生管理系统).doc_第1页
第1页 / 共16页
C++课程设计(学生管理系统).doc_第2页
第2页 / 共16页
C++课程设计(学生管理系统).doc_第3页
第3页 / 共16页
C++课程设计(学生管理系统).doc_第4页
第4页 / 共16页
C++课程设计(学生管理系统).doc_第5页
第5页 / 共16页
点击查看更多>>
资源描述

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

1、课程设计目的熟悉程序设计的基本流程,掌握程序设计基本方法,基本技巧、并能综合运用,提高程序设计能力。通过实践,熟悉掌握C+语言中面向过程部分的内容,能够运用C+语言解决一个实际问题。设计环境及语言VC+集成开发环境(IDE)Microsoft visual C+ 6.0语言。课题设计步骤1. 需求分析 从软件使用者处获得用户需求,确定课题开发应具备的功能;2. 系统结构设计 将整个系统功能分块,考虑各个功能模块应具备的功能,模块间的联系,划分不同的子系统进行设计;3. 数据设计 设计系统中新的数据类型、存储类型;4. 代码设计 在以上阶段的基础上编写代码;5. 软件测试 使用实现设计好的测试用

2、例、测试次数对编制的程序进行测试,发现存在错误(包括潜在的问题),加以修改,完善。课程设计内容:1学生个人信息管理系统。本课程设计通过建立、修改、查询、显示、排序等显示学生个人信息等功能,具体的技术有:(1)结构、枚举类型的定义与使用;(2)数组的定义使用;(3)程序的三种基本控制流程的综合、灵活运用;(4)普通指针和数组指针的定义和使用;(5)各类函数的定义和调用;(6)文件的输入/输出(7)程序的调试。2具备的功能有:(1) 新增学生数据的添加:姓名,成绩。(2) 修改学生信息:输入姓名,根据姓名,修改该学生的三项学生信息数据并显示;(3) 删除一个学生信息:输入姓名,根据学生姓名删除该生

3、信息;(4) 根据学生姓名查询:输入姓名,查找该学生并显示学生个人信息;(5) 显示全部学生信息;(6) 根据学生姓名首字母先后排序学生个人信息;3设计要求(1)在Visual C+控制台应用程序方式下设计课题。(2) 设计的程序完成该课程规定的功能。(3) 程序具有一定的健壮性。4设计部分#include #include #include class stu /定义一个stu类 char name20; double math,chinese,english,average,sum; public: stu() stu(char n20,double ma,double chin,doub

4、le eng) strcpy(name,n); math=ma; chinese=chin; english=eng; double getsum() sum=chinese+english+math; return sum; double getaver() average=getsum()/3; return average; friend void main(); ; void main() cout请选择您需要的操作!endl; cout操作:endl; cout(0)数据录入endl; cout(1)增加人员endl; cout(2)删除人员endl; cout(3)修改数据endl

5、; cout查询:endl; cout(4)按总成绩查询endl; cout(5)按姓名查询endl; cout(6)输出所有学生的数据endl; cout成绩名词endl; cout(7)按总分查询排名endl; cout(8)按语文查询排名endl; cout(9)按数学查询排名endl; cout(y)按英语查询排名endl; cout选择相关操作请输入相对的括号里的阿拉伯数字!p; if(p=0&p=10) flag2=1; else cout指令错误!请重新输入:endl; while(flag2=0); do switch(p) case 0: char c; char name2

6、0;double math,chinese,english; do cout请输入姓名name; cout请输入数学成绩:math; cout请输入语文成绩:chinese; cout请输入外语成绩:english; filej=new ofstream(d:document,ios:ate); *filej姓名name数学成绩math语文成绩chinese外语成绩englishendl; j+; si=new stu(name, math, chinese, english); i+; cout数据录入成功,想继续录入吗(y/n)c; flag2=0; do if(c!=y&c!=n) co

7、ut指令错误!请重新输入!c; else flag2=1; while(flag2=0); while(c=y); break; case 4: double t;char c; do int flag1=0; cout请输入你要查询学生的总成绩t; for(int q=0;qgetsum()=t) flag1=1; cout您要查询的学生是:(*sq).nameendl; if(flag1=0) cout对不起!您要查询的学生不存在!endl; cout您想继续查询吗?(y/n)c; if(c!=y&c!=n) cout指令错误!请重新输入!c; while(c=y); break; cas

8、e 5: char n20;int j=0;char c; do int flag=0; cout请输入你要查询的学生姓名n; for(int j=0;ji;j+) if(strcmp(n,(*sj).name)=0) flag=1; cout您要查询的学生是:(*sj).nameendl; cout(*sj).name的总成绩成绩是(*sj).getsum()endl平均成绩是:(*sj).getaver()endl; if(flag=0) cout对不起!您要查询的学生不存在!endl; cout您想继续查询吗?(y/n)c; if(c!=y&c!=n) cout指令错误!请重新输入!c;

9、 while(c=y); break; case 1: char name20;double math,chinese,english; char c; do cout请输入您要增加的学生的姓名:name; cout请输入数学成绩:math; cout请输入语文成绩:chinese; cout请输入外语成绩:english; filej=new ofstream(d:document,ios:ate); *filej姓名name数学成绩math语文成绩chinese外语成绩englishendl; j+; si=new stu(name, math, chinese, english); i+

10、; cout数据录入成功,想继续录入吗(y/n)c; if(c!=y&c!=n) cout指令错误!请重新输入!c; while(c=y); break; case 2: char name20;bool flag3=0;char c; do cout请输入您要删除的学生姓名:name; for(int h=0;hname)=0) flag3=1; i-; do sh=sh+1; h+; while(h=i); if(flag3=0) cout您要求删除的对象本来就不存在!请检查输入的正确性!; cout要继续删除吗?(y/n)c; if(c!=y&c!=n) cout指令错误!请重新输入!c

11、; while(c=y); break; case 3: char name20;double mat,chin,eng;flag2=0; char c; do cout请输入您要修改的学生的姓名:name; for(int h=0;hname)=0) flag2=1; cout请输入新的数学成绩:mat; cout请输入新的语文成绩:chin; cout请输入新的外语成绩:eng; sh-chinese=chin; sh-math=mat; sh-english=eng; cout数据修改成功!; if(flag2=0) cout您要修改的学生本来就不存在!请检查重新输入!endl; cou

12、t想继续修改吗(y/n)c; if(c!=y&c!=n) cout指令错误!请重新输入!c; while(c=y); break; case 6: cout本系统所有学生数据如下:endl; if(i=0) cout管理系统中没有录入数据或者数据已经被删除!endl; for(int k=0;ki;k+) coutk+1 姓名: name 语文: chinese数学: math 外语: english总分: (*sk).getsum() 平均分: (*sk).getaver()endl; break; case 7: int t;stu b; cout本系统所以学生排名如下:endl; for

13、(int x=0;xi-1;x+) t=x; for(int y=x+1;ygetsum()getsum() t=y; if(t!=x) b=*sx; *sx=*st; *st=b; if(i=0) cout管理系统中没有录入数据或者数据已经被删除!; for(int k=0;ki;k+) coutk+1 姓名: name 语文: chinese数学: math 外语: english总分: getsum() 平均分: getaver()endl; break; case 8: int t;stu b; cout本系统所以学生语文排名如下:endl; for(int x=0;xi-1;x+)

14、t=x; for(int y=x+1;ychinese)chinese) t=y; if(t!=x) b=*st; *st=*sx; *sx=b; if(i=0) cout管理系统中没有录入数据或者数据已经被删除!; for(int k=0;ki;k+) coutk+1 姓名: name 语文: chinese数学: math 外语: english总分: getsum() 平均分: getaver()endl; break; case 9: int t;stu b; cout本系统所以学生数学排名如下:endl; for(int x=0;xi-1;x+) t=x; for(int y=x+1

15、;ymath)math) t=y; if(t!=x) b=*st; *st=*sx; *sx=b; if(i=0) cout管理系统中没有录入数据或者数据已经被删除!; for(int k=0;ki;k+) coutk+1 姓名: name 语文: chinese数学: math 外语: english总分: getsum() 平均分: getaver()endl; break; case y: int t;stu b; cout本系统所以学生英语排名如下:endl; for(int x=0;xi-1;x+) t=x; for(int y=x+1;yenglish)english) t=y;

16、if(t!=x) b=*st; *st=*sx; *sx=b; if(i=0) cout管理系统中没有录入数据或者数据已经被删除!; for(int k=0;ki;k+) coutk+1 姓名: name 语文: chinese数学: math 外语: english总分: getsum() 平均分: getaver()endl; break; cout您想继续进行其他操作吗?(y/n)w; if(w!=y&w!=n) cout指令错误!请重新输入!endl; else flag4=1; while(flag4=0); if(w=y) cout请输入操作代码(0 录入/4 按总分查询/5 按姓名查询/1 增加人员/2 删除人员/3 修改数据/6 显示所有成员数据/7 按总分排名/8 按语文排名/9按数学排名/y按英语排名)p; while(w=y); for(int x=0;xi;x+) delete sx; coutdelete all members!endl; 程序运行结果图示:图一 程序运行后的菜单显示图二 “(1):增加学生”界面图三 “(2):修改学生信息”界面图四 “(3):删除学生信息”界面图五 “(4):查询学生信息”界面图六 “5: 显示所有学生信息”界面图七 “(6):按总分排序”界面

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

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1