C++奖学金评定系统课设报告.docx

上传人:b****2 文档编号:997776 上传时间:2023-04-30 格式:DOCX 页数:18 大小:157KB
下载 相关 举报
C++奖学金评定系统课设报告.docx_第1页
第1页 / 共18页
C++奖学金评定系统课设报告.docx_第2页
第2页 / 共18页
C++奖学金评定系统课设报告.docx_第3页
第3页 / 共18页
C++奖学金评定系统课设报告.docx_第4页
第4页 / 共18页
C++奖学金评定系统课设报告.docx_第5页
第5页 / 共18页
C++奖学金评定系统课设报告.docx_第6页
第6页 / 共18页
C++奖学金评定系统课设报告.docx_第7页
第7页 / 共18页
C++奖学金评定系统课设报告.docx_第8页
第8页 / 共18页
C++奖学金评定系统课设报告.docx_第9页
第9页 / 共18页
C++奖学金评定系统课设报告.docx_第10页
第10页 / 共18页
C++奖学金评定系统课设报告.docx_第11页
第11页 / 共18页
C++奖学金评定系统课设报告.docx_第12页
第12页 / 共18页
C++奖学金评定系统课设报告.docx_第13页
第13页 / 共18页
C++奖学金评定系统课设报告.docx_第14页
第14页 / 共18页
C++奖学金评定系统课设报告.docx_第15页
第15页 / 共18页
C++奖学金评定系统课设报告.docx_第16页
第16页 / 共18页
C++奖学金评定系统课设报告.docx_第17页
第17页 / 共18页
C++奖学金评定系统课设报告.docx_第18页
第18页 / 共18页
亲,该文档总共18页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C++奖学金评定系统课设报告.docx

《C++奖学金评定系统课设报告.docx》由会员分享,可在线阅读,更多相关《C++奖学金评定系统课设报告.docx(18页珍藏版)》请在冰点文库上搜索。

C++奖学金评定系统课设报告.docx

C++奖学金评定系统课设报告

 

航空航天大学

 

实验报告

 

课程名称:

面向对象程序设计及C++

实验题目:

学生奖学金评定系统

 

院(系):

计算机学院

专业:

计算机科学与技术

班级:

学号:

姓名:

 

一、实验目的

达到对所学面向对象程序设计知识的一次综合运用,熟练掌握面象对象分析问题、解决问题的方法。

二、实验容描述

该实验室评定学生奖学金的一个系统,包括查看学生奖学获得的情况,以及录入学生信息,修改学生信息,查看个人奖学金等功能。

结果都将保存在文件中,在下次程序开始时会自动调用上一次修改的结果。

三、类设计及描述

name(

姓名

学生类

number

学号

sex

性别

GPA

绩点

money

钱数

mo

(期末成绩)

Zhong

(期中成绩)

Pingding

(成员函数,由成绩计算出该学生的绩点以及奖学金数额)

 

考试类(基类)

English(英语成绩)

Math

(数学成绩)

Sport

(体育成绩)

Practise(实践成绩)

Zong

(总成绩

 

期中考试类

Zong(计算期中总成绩)

Zong(计算期末总成绩)

考试类

期末考试类

派生

四、关键函数描述

初始化学生信息函数chushihua();:

把文件中已有的学生信息读取出来

查寻学生获得奖学金信息函数paihang();:

查询所有学生奖学金获得情况

录入学生成绩函数fun1();:

录入新学生,性别,学号,以及成绩

修改学生成绩函数amend();:

可以修改已有学生任何一次考试的任何一门成绩

查寻个人奖学金函数find();:

可以查寻已有学生奖学金获得的情况。

五、程序测试/运行的结果

图4.1

******************查询文件中已有学生信息********************

图4.2

************************初始化学生信息***************************

图4.3

*******************查询学生获得奖学金信息************************

图4.4

********************查询结果************************

图4.5

**********************如果没有录入此人信息**************

六、实验总结

这是我第一次做比较大的C++程序,在制作的过程中遇到过很多问题,不过还在在老师和同学的帮助下把这些问题都得到了解决。

程序可以流畅运行,但是依然存在着很多缺陷,比如说界面,做的并没有呢么完美,功能方面也有待加强,我会继续努力,争取做出更好的作品。

 

附录(实验代码)

#include

#include

#include

#include

usingnamespacestd;

staticintn=0;

classexam//成绩类

{

public:

floatMath;

floatEnglish;

floatSport;

floatpractise;

floatzong;

};

classfinal:

publicexam

{

public:

floatzongchengji(floata=0,floatb=0,floatc=0,floatd=0);

};

classmidterm:

publicexam

{

public:

floatzongchengji(floata=0,floatb=0,floatc=0,floatd=0);

};

floatmidterm:

:

zongchengji(floata,floatb,floatc,floatd)

{

zong=a+b+c+d;

returna+b+c+d;

}

floatfinal:

:

zongchengji(floata,floatb,floatc,floatd)

{

zong=a+b+c+d;

returna+b+c+d;

}

classstudent//学生类

{

public:

floatpingding();

public:

stringname;//

stringnumber;//学号

charsex[5];//性别

intmoney;//奖学金数额

floatGPA;//绩点

midtermzhong;//期中考试成绩

finalmo;//期末考试成绩

};

floatstudent:

:

pingding()

{

floata,b;

a=(mo.Math*4+mo.English*3+mo.Sport*2+mo.practise*1.5)*0.7/10.5/10;

b=(zhong.English*3.5+zhong.Math*4+zhong.practise*1.5+zhong.Sport*2)*0.3/10.5/10;

GPA=a+b;

if(GPA>=8)

money=1000;

elseif(GPA>=7&&GPA<8)

money=500;

elseif(GPA>=6&&GPA<7)

money=300;

elseif(GPA<6&&GPA>=5)

money=150;

else

money=0;

returnGPA;;

}

classguanli

{

public:

voidprint();

intgameprint1();

voidfun1(student*stu);

voidpaihang(student*stu);

voidfind(student*stu);

voidamend(student*stu);

voidchushi(student*stu);

};

voidguanli:

:

print()//打印界面函数

{

cout<<"┃------------------------------------┃"<

cout<<"┃*********奖学金评定*********┃"<

cout<<"┃*********1初始化学生信息*********┃"<

cout<<"┃*********2查看奖学金信息*********┃"<

cout<<"┃*********3查询个人奖学金*********┃"<

cout<<"┃*********4修改个人成绩*********┃"<

cout<<"┃*********5退出*********┃"<

cout<<"┃------------------------------------┃"<

}

intguanli:

:

gameprint1()//打印函数

{

inta;

cout<<"继续操作请按1,退出请按0"<

cin>>a;

returna;

}

voidguanli:

:

chushi(student*stu)//初始化学生信息函数

{

ifstreamp;

inti;

p.open("E:

\\基本信息.txt");

if(!

p)

{

cout<<"打开失败"<

exit(0);

}

while(!

p.eof())

{

p>>stu[n].name>>stu[n].number>>stu[n].sex>>stu[n].mo.Math>>stu[n].mo.English>>stu[n].mo.Sport>>stu[n].mo.practise>>stu[n].zhong.Math>>stu[n].zhong.English>>stu[n].zhong.Sport>>stu[n].zhong.practise;

n++;

}

for(i=0;i

stu[i].pingding();

p.close();

}

voidguanli:

:

fun1(student*stu)//录入学生信息函数

{

floata,b,c,d,i;

cout<<"输入学生,学号,性别"<

cin>>stu[n].name>>stu[n].number>>stu[n].sex;

cout<<"请选择输入"<

cout<<"请输入该生期中成绩--请按--数学英语体育实践的顺序输入,否则默认为0"<

cin>>a>>b>>c>>d;

stu[n].zhong.Math=a;

stu[n].zhong.English=b;

stu[n].zhong.Sport=c;

stu[n].zhong.practise=d;

stu[n].zhong.zongchengji(a,b,c,d);

cout<<"请输入该生期末考试成绩--请按--数学英语体育实践的顺序输入,否则默认为0"<

cin>>a>>b>>c>>d;

stu[n].mo.Math=a;

stu[n].mo.English=b;

stu[n].mo.Sport=c;

stu[n].mo.practise=d;

stu[n].mo.zongchengji(a,b,c,d);

ofstreamp;

p.open("E:

\\基本信息.txt",ios:

:

app);

if(!

p)

{

cout<<"打开失败"<

exit(0);

}

p<

n++;

}

voidguanli:

:

paihang(student*stu)//查看奖学金信息函数

{

inti;

cout<<""<<""<<"绩点"<<""<<"奖学金数额"<

for(i=0;i

{

stu[i].pingding();

cout<

}

}

voidguanli:

:

find(student*stu)//查询奖学金函数

{

inta;

floatb;

cout<<"请输入所查询学生学号"<

stringch;

cin>>ch;

inti;

for(i=0;i

{

if(ch==stu[i].number)

{

b=stu[i].pingding();

if(b>=6&&b<7)

cout<<"恭喜"<

elseif(b>=5&&b<6)

cout<<"恭喜"<

elseif(b>=7&&b<8)

cout<<"恭喜"<

elseif(b>=8)

cout<<"恭喜"<

else

cout<<"该生未获得奖学金,请继续努力"<

return;

}

}

cout<<"查无此人"<

}

voidguanli:

:

amend(student*stu)//修改学生成绩函数

{

strings;

inti=0,a,b;

charch;

floataa;

cout<<"请输入修改学生的"<

cin>>s;

for(i=0;i

if(stu[i].name==s)

{

ofstreamp;

p.open("E:

\\基本信息.txt");

if(!

p)

{

cout<<"打开失败"<

exit(0);

}

loop1:

cout<<"请输入要修改的成绩"<

cout<<"1期中"<

cout<<"2期末"<

cin>>a;

if(a==1)

{

cout<<"请输入要修改的学科"<

cout<<"1数学"<

cout<<"2英语"<

cout<<"3体育"<

cout<<"4实践"<

cin>>b;

cout<<"请输入修改后的成绩"<

cin>>aa;

switch(b)

{

case1:

stu[i].zhong.Math=aa;

break;

case2:

stu[i].zhong.English=aa;

break;

case3:

stu[i].zhong.Sport=aa;

break;

case4:

stu[i].zhong.practise=aa;

break;

}

}

elseif(a==2)

{

cout<<"请输入要修改的学科"<

cout<<"1数学"<

cout<<"2英语"<

cout<<"3体育"<

cout<<"4实践"<

cin>>b;

cout<<"请输入修改后的成绩"<

cin>>aa;

switch(b)

{

case1:

stu[i].mo.Math=aa;

break;

case2:

stu[i].mo.English=aa;

break;

case3:

stu[i].mo.Sport=aa;

break;

case4:

stu[i].mo.practise=aa;

break;

}

}

else

{

cout<<"输入错误请重新输入"<

gotoloop1;

}

cout<<"继续修改?

"<

cin>>ch;

if(ch=='y')

gotoloop1;

for(i=0;i

{

p<

}

p.close();

return;

}

cout<<"查无此人"<

}

voidmain()

{

system("color8c");

studentstu[100],*CH;

guanlia;

CH=stu;

a.chushi(stu);

inti,lin;

loop1:

a.print();

cin>>i;

if(i!

=1&&i!

=2&&i!

=3&&i!

=4&&i!

=5)

{

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

gotoloop1;

}

else

{

switch(i)

{

case1:

a.fun1(CH);

lin=a.gameprint1();

if(lin==1)

gotoloop1;

elseexit(0);

case2:

a.paihang(CH);

lin=a.gameprint1();

if(lin==1)

gotoloop1;

elseexit(0);

case3:

a.find(CH);

lin=a.gameprint1();

if(lin==1)

gotoloop1;

elseexit(0);

case4:

a.amend(CH);

lin=a.gameprint1();

if(lin==1)

gotoloop1;

elseexit(0);

case5:

exit(0);}}}

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

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2