奖学金计算系统报告Word文档下载推荐.docx
- 文档编号:16093871
- 上传时间:2022-11-19
- 格式:DOCX
- 页数:11
- 大小:107.79KB
奖学金计算系统报告Word文档下载推荐.docx
《奖学金计算系统报告Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《奖学金计算系统报告Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
系统模块划分如图
1.2.系统应达到的性能
①数据精确度
在精度需求上,根据实际需要,数据在输入、输出及传输的过程中要满足各种精度的需求根据关键字精度的不同。
②时间特性
系统响应时间应在人的感觉和视觉范围内(<
1
s),系统响应时间足够迅速(<
5
s),能够满足用户要求。
③适应性
在操作方式、运行环境、软件接口或开发计划等发生变化时,应具有适应能力。
④可使用性
操作界面简单明了,易于操作,对格式和数据类型限制的数据,进行验证,包括客户端验证和服务器验证,并采用错误提醒机制,提示用户输入正确数据和正确的操作系统。
⑤安全保密性
只有合法用户才能登录使用系统,对每个用户都有权限设置。
对登录名、密码、以及用户重要信息进行加密,保证账号信息安全。
二、系统设计
2.1逻辑结构的设计
本奖学金计算系统采用的是顺序表结构。
对于顺序表,计算机系统用一块地址连续的有限空间来依次存放线性表中的数据元素。
这样,任意两个逻辑上相邻的数据元素在物理存储上也是必然相邻。
顺序表可以随机访问,它可以通过元素的位置来访问数据元素。
E-R图
2.2物理结构的设计
本奖学金计算系统采用的是顺序存储方式。
1)初始化学生信息
通过本模块添加学生的基本信息,包括学生姓名,学号,性别,专业。
并输入两个学期各个科目的成绩。
2)查看奖学金信息
通过初始化学生的信息,查奖学金信息,包括姓名,学分绩及奖学金数额。
3)查询个人奖学金
当录入的人数诸多时,输入学号,可以查询自己的奖学金数额。
4)修改个人成绩
三、部分函数成员的实现
1.初始化顺序表
voidguanli:
:
chushi(student*stu)
{
inti;
for(i=0;
i<
n;
i++)//n是输入的人数
stu[i].pingding();
//调用奖学金评定函数,初始化每个同学奖学金都为零。
}
2.查看奖学金信息顺序表
paihang(student*stu)//查看奖学金信息函数
{inti;
cout<
<
"
姓名"
<
学分绩"
奖学金数额"
endl;
for(i=0;
i++)
{stu[i].pingding();
}
boolfinish=false;
//冒泡排序,学分绩从大到小排列
intk=1;
while(k<
n&
&
!
finish){
finish=true;
for(intj=0;
j<
n-k;
j++)
if(stu[j].GPA<
stu[j+1].GPA){
s[j+1],stu[j]);
finish=false;
}
{cout<
stu[i].name<
stu[i].GPA<
stu[i].money<
}3.查询奖学金顺序表
voidguanli:
find(student*stu)
inta;
floatb;
cout<
请输入所查询学生学号"
stringch;
cin>
>
ch;
inti;
{if(ch==stu[i].number)
b=stu[i].pingding();
if(b>
=75&
b<
80)
恭喜"
获得综合三等奖学金,数额为750"
elseif(b>
=80&
90)
获得综合二等奖学金,数额为1500"
=90)
获得综合一等奖学金,数额为3000"
else
该生未获得奖学金,请继续努力"
return;
查无此人"
4.修改学生顺序表
amend(student*stu)
{strings;
inti=0,a,b;
charch;
floataa;
请输入修改学生的学号"
s;
if(stu[i].number==s
{loop1:
请输入要修改的成绩"
1上半年成绩"
2下半年成绩"
a;
if(a==1){
请输入要修改的学科"
1数学"
2英语"
3体育"
4实践"
b;
请输入修改后的成绩"
aa;
switch(b)
{case1:
stu[i].first_grade.Math=aa;
break;
case2:
stu[i].first_grade.English=aa;
break;
case3:
stu[i].first_grade.Sport=aa;
case4:
stu[i].first_grade.practise=aa;
elseif(a==2)
{cout<
{case1:
stu[i].second_grade.Math=aa;
stu[i].second_grade.English=aa;
stu[i].second_grade.Sport=aa;
stu[i].second_grade.practise=aa;
else{cout<
输入错误请重新输入"
gotoloop1;
}//当输入错误时,跳转到loop1循环
是否继续修改?
(Y/N)"
if(ch=='
y'
)gotoloop1;
//若继续修改,跳转循环
return;
//结束运行
}
四、测试与调试
测试效果与截图
程序效果主界面
初始化学生信息
查看奖学金信息
查询个人奖学金
修改个人成绩
五、归纳总结
本学期我们的C++数据结构实训课程的考试题目是让学生自主设计程序,全班每人都需要完成属于自己的程序.而我需要完成的是奖学金系统.
C++数据结构的实质就是以一定的语法规范为准,通过对数据量的复杂结构运算,完成一定功能的程序,是一门计算机基础语言.而我们通过这一学期的学习,对于其特点和算法有了一定程度的了解.这两周的实训课程正是让我们巩固以前的知识并在此基础上能够有所突破.
在大家的刻苦努力下,忙碌了两个星期,我们顺利的完成了对此程序的编译与调试运行.在设计程序的过程中,我们了解到要设计一个完整的程序,其中最难的可能就是设计整个程序的框架即需求分析,其中可能需要经过很多次的修改与调试,所以必须要有耐心,直至最后设计出自己想要的程序.
另外平时学习C++数据结构的基础也很关键.如果平时学的不怎么样,那么你面对这么一个比较有难度的程序时,可能会望而却步,看懂他人的程序是个难点,更别说让自己去设计了.获悉解决此类问题,最好就是多向同学,请教老师或者查找资料.
设计一个程序的过程就是解决一个实际问题的过程,从解决实际问题的角度,我们可以这样来看:
首先要了解这个问题的基本要求,即输入.输出.完成从输入到输出的要求是什么;
其次我们必须捋清思路,逐一的解决问题的各个方面,即从输入开始入手,着重考虑如何从输入导出输出,在这个过程中,确定所需的变量,数组,函数,然后确定处理的过程-----算法.
感谢这次的实训课程,它使我更加深刻的体会到C++数据结构程序编写过程的严谨与细致,还有就是无论做任何事情都要有耐心.总的来说,这次实训课程让我受益匪浅,对数据结构也有了进一步的认识:
其功能多,表达能力强,使用灵活方便,目标程序效率高等.C++是在国内外都广泛使用的一种计算机语言,相信以上优点,还有很多我所没有发现的,希望能在以后的学习中有更深入的认识。
附录参考文献
谭浩强著《C++面向对象程序设计》清华大学出版社;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 奖学金 计算 系统 报告