学生成绩管理系统C++语言高级程序设计.docx

上传人:b****8 文档编号:10497161 上传时间:2023-02-14 格式:DOCX 页数:15 大小:18.96KB
下载 相关 举报
学生成绩管理系统C++语言高级程序设计.docx_第1页
第1页 / 共15页
学生成绩管理系统C++语言高级程序设计.docx_第2页
第2页 / 共15页
学生成绩管理系统C++语言高级程序设计.docx_第3页
第3页 / 共15页
学生成绩管理系统C++语言高级程序设计.docx_第4页
第4页 / 共15页
学生成绩管理系统C++语言高级程序设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

学生成绩管理系统C++语言高级程序设计.docx

《学生成绩管理系统C++语言高级程序设计.docx》由会员分享,可在线阅读,更多相关《学生成绩管理系统C++语言高级程序设计.docx(15页珍藏版)》请在冰豆网上搜索。

学生成绩管理系统C++语言高级程序设计.docx

学生成绩管理系统C++语言高级程序设计

C++面向对象课程设计

课题:

学生成绩管理系统

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

指导教师:

闫洪亮陈红军薛冰

李蓓景伟娜

学生班级:

0614061

学生学号:

061406140

学生姓名:

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

2008.02.28

一、设计题目:

学生成绩管理系统

二、系统环境:

硬件:

联想电脑

软件:

Microsoftvisualc++

三、设计内容概述、解决方案及说明

学生成绩管理系统能够实现学生成绩的录入、查询、修改、增加、注销、总排明及各科分数排名基本信息。

利用C++语言编写来实现,深入理解用类、继承等面向对象的编程的特点。

四、流程图及模块图及说明()

(流程图模块见后附录)

五、程序清单(加注释)及相关说明

(程序源代码如下)

#include

#include

#include

usingnamespacestd;

intj;//全局变量

structfenshu//用于存放学生成绩

{

floatchinese;//存放语文成绩

floatmath;//存放数学函数

floatenglish;//存放英语函数

floattotal;

};

structstudent//用于存放学生所有信息

{

charxingming[20];//存放学生姓名

intxuehao;//存放学生学号

fenshuz;//学生成绩封装结构体

};

classprogram//类实现学生成绩的各种功能

{

public:

voidsetname();//学生成绩注册

voidgetname();//学生成绩查询

voidxiugai();//学生成绩修改

voidtianjia();//学生成绩填加

voidshanchu();//学生成绩注销

voidpaiming();//学生成绩排名函数

private:

studenta[100];//用于存放学生的各种信息

};

voidprogram:

:

setname()//学生注册函数

{

floatd,e,f;

cout<

cout<<"请输入注册学生的人数"<

cin>>j;

charnamestr[20];//输入学生姓名

intnumber;

for(inti=0;i

{

cout<<"输入学生的姓名:

";

cin>>namestr;//学生姓名输入

strcpy(a[i].xingming,namestr);//输入的学生姓名负值给结构体保存

cout<<"请输入学生的学号:

";

cin>>number;

a[i].xuehao=number;//输入学生学号

cout<<"语文:

";

cin>>d;

cout<<"数学:

";

cin>>e;

cout<<"英语:

";

cin>>f;

a[i].z.chinese=d;//给学生成绩赋值

a[i].z.english=f;

a[i].z.math=e;

a[i].z.total=a[i].z.chinese+a[i].z.english+a[i].z.math;

}

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidprogram:

:

getname()//学生成绩查询函数

{

cout<

cout<<"请输入查询同学的姓名:

"<

charname[20];

cin>>name;

for(intk=0;k

{

if(strcmp(a[k].xingming,name)==0)//学生姓名查询是否对应

{//对应则输出学生信息否则不执行

cout<<"学号:

"<

cout<<"语文:

"<

cout<<"数学:

"<

cout<<"英语:

"<

cout<<"综合:

"<

}

}

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidprogram:

:

xiugai()//学生成绩修改函数

{

cout<

floatx,y,z;

cout<<"请输入需要修改的学生的姓名:

";

charnames[20];

cin>>names;

for(intl=0;l

{

if(strcmp(a[l].xingming,names)==0)//学生姓名查询是否对应

{

cout<<"请从新输入该生的成绩!

"<

cout<<"语文:

";

cin>>x;

cout<<"数学:

";

cin>>y;

cout<<"英语:

";

cin>>z;

a[l].z.chinese=x;

a[l].z.english=z;

a[l].z.math=y;

a[l].z.total=a[l].z.chinese+a[l].z.english+a[l].z.math;

}

}

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidprogram:

:

tianjia()//新学生注册函数

{

cout<

++j;//全局变量

charnames[20];

cout<<"输入新增学生姓名:

";

cin>>names;

strcpy(a[j-1].xingming,names);

cout<<"输入新增学生学号:

";

inti;

cin>>i;

a[j-1].xuehao=i;//J减一与数组对应

cout<<"输入新增学生成绩:

"<

floatm,n,r;

cout<<"语文:

";

cin>>m;

cout<<"数学:

";

cin>>n;

cout<<"英语:

";

cin>>r;

a[j-1].z.chinese=m;//给新添加学生成绩赋值

a[j-1].z.english=r;

a[j-1].z.math=n;

a[j-1].z.total=a[j-1].z.chinese+a[j-1].z.english+a[j-1].z.math;

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidprogram:

:

shanchu()//学生成绩注销函数

{

cout<

charnam[20];

charna[]="sorry";

cout<<"输入需要删除的学生姓名"<

cin>>nam;

for(into=0;o

{

if(strcmp(a[o].xingming,nam)==0)

{

cout<<"您的操作成功!

"<

strcpy(a[o].xingming,na);

a[o].xuehao=0;

a[o].z.english=0;

a[o].z.chinese=0;

a[o].z.math=0;

a[o].z.total=0;

}

}

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidprogram:

:

paiming()//学生成绩排名函数

{

cout<

intq=1,i=1,l=1,m=1;

charname[20];

cout<<"输入学生姓名:

";

cin>>name;

for(intp=0;p

{

if(strcmp(a[p].xingming,name)==0)//学生成绩排序

{

for(intk=0;k

{

if(a[p].z.total

{

q++;

}

if(a[p].z.chinese

{

i++;

}

if(a[p].z.english

{

l++;

}

if(a[p].z.math

{

m++;

}

}

cout<<"姓名:

"<

cout<<"总分:

"<

";//输出学生成绩排序情况

cout<

cout<<"语文:

"<

";

cout<

cout<<"数学:

"<

";

cout<

cout<<"英语:

"<

";

cout<

}

}

charwo;

cout<

cout<<"★★★★★★★★★★★★★"<<"按0返回上层"<<"★★★★★★★★★★★★★★★★★★"<

cin>>wo;

}

voidmain()//主函数

{

system("color56");

charr[20];

chars[20];

cout<<"★★★★★★★★★★★★★★★★"<<"欢迎用户注册"<<"★★★★★★★★★★★★★★★★"<

cout<<"请输入用户名:

";

cin>>r;

cout<<"请填写密码:

";

cin>>s;

system("cls");

cout<

cout<<"★★★★★★★★★★★★★★★★"<<"恭喜你注册成功"<<"★★★★★★★★★★★★★★★"<

charwo;

cout<

cout<<"按任意键进入登陆界面"<

cin>>wo;

system("cls");

charh[20];

chart[20];

for(intm=0;m<3;m++)

{

cout<<"★★★★★★★★★★★★★★★"<<"欢迎使用本软件"<<"★★★★★★★★★★★★★★★"<

cout<<"请输入用户名:

";

cin>>h;

cout<<"请输入密码:

";

cin>>t;

system("cls");

if(strcmp(r,h)==0&&strcmp(s,t)==0)

{

cout<

cout<<""<<"登陆中,请稍等..."<

for(intk=0;k<1000000000;k++)

{}

gotomenu;

}

else

{cout<<"\a"<<"\a"<<"\a"<

cout<<"输入错误,请从新输入"<

cout<<"您只有三次机会"<

}

}

exit(0);

menu:

system("color60");//DOS颜色变换

cout<<"★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★"<

cout<

cout<<"★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★"<

cout<

cout<<"▲▲▲▲"<

cout<<"§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§"<

cout<

cout<

cout<

cout<

cout<

cout<

cout<

programb;

chari;

cout<<"请选择数字键操作"<

cin>>i;

switch(i)

{

case'1':

system("cls");cout<

case'2':

system("cls");cout<

case'3':

system("cls");cout<

case'4':

system("cls");cout<

case'5':

system("cls");cout<

case'6':

system("cls");cout<

case'7':

exit(0);

}

gotomenu;

}

六、设计中遇到的问题及解决方法

我们设计的题目是学生成绩管理系统,刚拿到这个我们首先进行了分析,在头脑里有了个大概的脉络,接下来的就具体行动了,对系统的需求分析,编写程序,当然在编写的过程中遇到了很多困难。

编写一个程序需要实现什么功能,学生的基本信息要如何得到实现,刚开始我们先编写一个简单的程序,能够基本实现学生成绩的录入,查询,修改等功能,显然这些在实际生活中还是不够的,然后再添加了总分的计算,各科的排名,学生成绩的注销。

而如何将这些功能全部联系起来呢,我们考虑到了结构体,再经过仔细复习课本,参考书籍,经过我们三个人的仔细研究与探讨终于得到了实现。

调试的时候是也是不断修改。

七、心得体会

心得体会

经过一星期的艰苦奋战,我们三人齐心协力,共同完成了任务.

这不仅是程序设计,更是锻炼我们处理问题的能力,同时也使我们了解到团队合作的可贵.编写程序是件细心活,稍不留神就会出错,这就必须要求我们对待事情要认真!

在编写程序的过程中,错误不断出现,不同的类型(如少写了一个符号,写错了字母,用错了函数等等)层出不穷,这考验我们待事细心,耐心,能不能坚持到底,不能半途而废.

这次主要体现出了团队合作的无比重要性,但与此同时我们也发现知识也同样占据着重要的地位.胜不骄,败不馁.没有最好,只有更好!

团队精神贯穿于课程设计的始终,这种精神带给我们力量的同时也增强了我们的团队意识,它将对我们产生巨大的影响。

在设计和调试程序的过程中,我们看到了自身在掌握知识上的欠缺之处,并获得了补充的机会。

从中获得的宝贵的经验和汲取的实践精华将对我们以后的学习起着不可磨灭的推动作用。

课程设计的时间很短暂,但对我们的影响意义却是无穷无尽的。

三人行必有我师,遇到问题我们一起讨论,研究,错了再写,写了在改.经过多次的修改,调试,运行,添加,终于最后在大家的欢呼声中,完成了我们的任务.虽说是累了点,但我们也从中找到了自己的快乐,每当完成一个新的函数时,那心情是激动啊,这毕竟是自己弄出来的,同时也使我们感受到了学习的快乐!

生活上我们也同样如此,以这种精神对待生活,对待生命,我想,我们的人生会更美好,路是自己走出来的,也只有经过无数次的磨练,无数次地坚定我们的信心,锻炼我们的意志渐渐地使自己才能够使自己成熟起来,走出一片属于自己的天空.

钟锦荣

2008-2-29

八、参考文献

《C++语言程序设计》(清华大学出版社)《C++程序设计》谭浩强编

 

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

当前位置:首页 > 外语学习 > 英语学习

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1