学生成绩管理系统C++语言高级程序设计_第1页
学生成绩管理系统C++语言高级程序设计_第2页
学生成绩管理系统C++语言高级程序设计_第3页
学生成绩管理系统C++语言高级程序设计_第4页
学生成绩管理系统C++语言高级程序设计_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、C+面向对象课程设计任务报告书课题:学生成绩管理系统指 导 教 师:闫洪亮 陈红军 薛 冰 李 蓓 景伟娜学 生 班 级:学 生 学 号:40学 生 姓 名: 20210228设计题目:学生成绩管理系统二、系统环境:硬件:联想电脑 软件:Microsoft visual c+三、设计内容概述、解决方案及说明学生成绩管理系统能够实现学生成绩的录入、查询、修改、增加、注销、总排明及各科分数排名根本信息。利用C+语言编写来实现,深入理解用类、继承等面向对象的编程的特点。四、流程图及模块图及说明流程图模块见后附录五、程序清单加注释及相关说明程序源代码如下#include#include#include

2、using namespace std;int j; /全局变量struct fenshu /用于存放学生成绩float chinese; /存放语文成绩float math; /存放数学函数float english; /存放英语函数float total;struct student /用于存放学生所有信息char xingming20; /存放学生姓名int xuehao; /存放学生学号fenshu z; /学生成绩封装构造体;class program /类 实现学生成绩的各种功能public:void setname(); /学生成绩注册void getname(); /学生成绩查

3、询void xiugai(); /学生成绩修改void tianjia(); /学生成绩填加void shanchu(); /学生成绩注销void paiming(); /学生成绩排名函数private:student a100; /用于存放学生的各种信息;void program:setname() /学生注册函数float d,e,f;coutendlendl;cout请输入注册学生的人数j;char namestr20; /输入学生姓名int number;for(int i=0;ij;i+)coutnamestr; /学生姓名输入strcpy(ai.xingming,namestr);

4、 /输入的学生姓名负值给构造体保存coutnumber;ai.xuehao=number; /输入学生学号 coutd;coute;coutf;ai.z.chinese=d; /给学生成绩赋值ai.z.english=f;ai.z.math=e;ai.z.total=ai.z.chinese+ai.z.english+ai.z.math;char wo;coutendlendl;cout 按0返回上层wo; void program:getname() /学生成绩查询函数 coutendlendl; cout请输入查询同学的姓名:name;for(int k=0;kj;k+)if(strcmp

5、(ak.xingming,name)=0) /学生姓名查询是否对应 /对应那么输出学生信息否那么不执行cout学号:ak.xuehaoendl; cout语文:ak.z.chineseendl;cout数学:ak.z.mathendl;cout英语:ak.z.englishendl;cout综合:ak.z.totalendl; char wo;coutendlendl;cout 按0返回上层wo; void program:xiugai() /学生成绩修改函数 coutendlendl; float x,y,z; coutnames; for(int l=0;lj;l+) if(strcmp(

6、al.xingming,names)=0) /学生姓名查询是否对应 cout请从新输入该生的成绩!endl; /新学生信息输入 coutx; couty; coutz; al.z.chinese=x; al.z.english=z; al.z.math=y; al.z.total=al.z.chinese+al.z.english+al.z.math; char wo; coutendlendl; cout 按0返回上层wo; void program:tianjia() /新学生注册函数 coutendlendl; +j; /全局变量 char names20; coutnames; str

7、cpy(aj-1.xingming,names); couti; aj-1.xuehao=i; /J减一与数组对应 cout输入新增学生成绩:endl; float m,n,r; coutm; coutn; coutr; aj-1.z.chinese=m; /给新添加学生成绩赋值 aj-1.z.english=r; aj-1.z.math=n; aj-1.z.total=aj-1.z.chinese+aj-1.z.english+aj-1.z.math; char wo; coutendlendl; cout 按0返回上层wo; void program:shanchu() /学生成绩注销函数

8、coutendlendl; char nam20;char na=sorry; cout输入需要删除的学生姓名nam; for(int o=0;oj;o+)if(strcmp(ao.xingming,nam)=0) cout您的操作成功!endl; /将注销学生成绩归零strcpy(ao.xingming,na); ao.xuehao=0; ao.z.english=0; ao.z.chinese=0; ao.z.math=0; ao.z.total=0; char wo;coutendlendl;cout 按0返回上层wo;void program:paiming() /学生成绩排名函数co

9、utendlendl;int q=1,i=1,l=1,m=1;char name20;coutname;for(int p=0;pj;p+)if(strcmp(ap.xingming,name)=0) /学生成绩排序for(int k=0;kj;k+) if(ap.z.totalak.z.total) /总成绩排序q+;if(ap.z.chineseak.z.chinese) /语文成绩排序i+;if(ap.z.englishak.z.english) /英语成绩排序l+;if(ap.z.mathak.z.math) /数学成绩排序m+;cout姓名:ap.xingmingendl; cout

10、总分:ap.z.total 总排名:; /输出学生成绩排序情况coutqendl;cout语文:ap.z.chinese 排 名:;coutiendl;cout数学:ap.z.math 排 名:;coutmendl;cout英语:ap.z.english 排 名:;coutlendl; char wo;coutendlendl;cout 按0返回上层wo;void main() /主函数system(color 56); char r20;char s20;cout欢送用户注册endlendl;coutr;couts;system(cls);coutendlendlendlendl;cout恭

11、喜你注册成功endl;char wo;coutendlendlendl;cout按任意键进入登陆界面wo;system(cls);char h20;char t20;for(int m=0;m3;m+) cout欢送使用本软件endlendl;couth;coutt;system(cls);if(strcmp(r,h)=0&strcmp(s,t)=0)coutendlendlendlendlendlendlendlendlendlendl;cout 登陆中,请稍等.endl;for(int k=0;k1000000000;k+)goto menu;else coutaaaendl;cout输入

12、错误,请从新输入endl;cout您只有三次时机endl;exit(0);menu: system(color 60); /DOS颜色变换coutendl;coutsetw(45)学生成绩管理系统endlendl;coutendl;coutsetw(43)请按照数字键endl;cout endlendl;coutendl;coutsetw(44)1.学生成绩录入endlendl;coutsetw(44)2.学生成绩查询endlendl;coutsetw(44)3.学生成绩修改endlendl;coutsetw(44)4.添加新的学生endlendl;coutsetw(44)5.学生成绩注销en

13、dlendl;coutsetw(44)6.学生成绩排名endlendl;coutsetw(36)7.退出endl;program b;char i;cout请选择数字键操作i;switch(i)case 1:system(cls);coutendl;cout学生成绩注册endl;b.setname();break;case 2:system(cls);coutendl;cout学生成绩查询endl;b.getname();break;case 3:system(cls);coutendl;cout学生成绩修改endl;b.xiugai();break;case 4:system(cls);co

14、utendl;cout学生成绩添加endl;b.tianjia();break;case 5:system(cls);coutendl;cout学生成绩注销endl;b.shanchu();break;case 6:system(cls);coutendl;cout学生成绩排名endl;b.paiming();break;case 7:exit(0);goto menu;六、设计中遇到的问题及解决方法 我们设计的题目是学生成绩管理系统,刚拿到这个我们首先进展了分析,在头脑里有了个大概的脉络,接下来的就具体行动了,对系统的需求分析,编写程序,当然在编写的过程中遇到了很多困难。编写一个程序需要实现

15、什么功能,学生的根本信息要如何得到实现,刚开场我们先编写一个简单的程序,能够根本实现学生成绩的录入,查询,修改等功能,显然这些在实际生活中还是不够的,然后再添加了总分的计算,各科的排名,学生成绩的注销。而如何将这些功能全部联系起来呢,我们考虑到了构造体,再经过仔细复习课本,参考书籍,经过我们三个人的仔细研究与探讨终于得到了实现。调试的时候是也是不断修改。七、心得体会心得体会 经过一星期的艰辛奋战,我们三人齐心协力,共同完成了任务. 这不仅是程序设计,更是锻炼我们处理问题的能力,同时也使我们了解到团队合作的可贵.编写程序是件细心活,稍不留神就会出错,这就必须要求我们对待事情要认真!在编写程序的过

16、程中,错误不断出现,不同的类型(如少写了一个符号,写错了字母,用错了函数等等)层出不穷,这考验我们待事细心,耐心,能不能坚持到底,不能半途而废. 这次主要表达出了团队合作的无比重要性,但与此同时我们也发现知识也同样占据着重要的地位.胜不骄,败不馁.没有最好,只有更好! 团队精神贯穿于课程设计的始终,这种精神带给我们力量的同时也增强了我们的团队意识,它将对我们产生巨大的影响。在设计和调试程序的过程中,我们看到了自身在掌握知识上的欠缺之处,并获得了补充的时机。从中获得的珍贵的经历和汲取的实践精华将对我们以后的学习起着不可磨灭的推动作用。课程设计的时间很短暂,但对我们的影响意义却是无穷无尽的。三人行必有我师,遇到问题我们一起讨论,研究,错了再写,写了在改.经过屡次的修改,调试,运行,添加

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论