C语言课程设计报告及程序:小学生测验方新盛

更新时间:2023-07-22 20:39:02 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

文档均来自网络,如有侵权请联系我删除文档

长江学院信息工程系

《程序设计综合课程设计》报告(2015/2016学年第一学期)

学生姓名:方新盛

学生班级:1530501

学生学号:201530050116

指导教师:戴晟辉

2016年1月6日

文档均来自网络,如有侵权请联系我删除文档

目录

一课程设计目的及要求 (1)

二课程设计任务和内容 (1)

三设计说明 (2)

1主要流程图 (2)

2课程设计思想 (3)

3 详细设计 (4)

3.1 登陆模块 (4)

3.2 加法模块 (6)

3.3 减法模块 (7)

3.4 混合模块 (9)

3.5运算结果 (10)

3.6使用软件 (12)

四课程设计感想 (12)

五参考文献 (13)

六附件(程序代码) (14)

文档均来自网络,如有侵权请联系我删除文档

小学生测验课程设计报告

一、课程设计目的及要求

(1)提高和加强自己的计算机应用与软件开发能力,使自己由初学者向专业的程序员过渡。

(2)培养自己独立分析问题、解决问题、查阅资料以及自学能力,以适应计算机产业日新月异发展的形势,综合运用所学知识,解决实际问题,全面提高学生的程序设计能力和开发能力。

(3)学习和掌握C++面向对象程序设计方法以及上机调试技巧,为今后学习其它专业课程打好坚实的基础。

(4)检测自己在这一学期对C++面向对象的学习及掌握情况。知道自己的不足,及时的弥补。为以后的学习打下一定的基础,也为自己以后如何制定学习计划做一铺垫。

二. 课程设计任务和内容

功能齐全:界面操作灵活方便,至少实现以下基本功能:

●电脑随机出10道题,每题10分,程序结束时显示学生得分;

●确保算式没有超出1~2年级水平,只允许进行50以内的加减法,

不允许两数之和或之差超出0~50的范围,负数更是不允许的;

●每道题学生有三次机会输入答案,当学生输入错误答案时,提

醒学生重新输入,如果三次机会结束则输出正确答案;

●对于每道题目,学生第一次输入正确答案得10分,第二次输入

正确答案得7分,第三次输入正确答案得5分,否则不得分;

●总成绩90分以上现实“SMART”,80~90分显示“GOOD”,70~80

分显示“OK”,60~70分显示“PASS”,60分以下显示“TRY AGAIN”。

第1页

文档均来自网络,如有侵权请联系我删除文档

第 2 页 三.设计说明

1.主要流程图

1 2 其他

是 否

10分 7分5分 0分

Main 函数 登陆模块 选择 加法运算 减法运算 混合运算 一次答对 二次答对 三次答对 结束 开始 输出得分

文档均来自网络,如有侵权请联系我删除文档

2. 课程设计思想

在main()主函数中定义STUDENT student;对象,并调用student.Input();信息输入,在登录模块程序采用了调用以及输入输出函数!当用户输入自己的学号以及姓名开始使用本系统,进入登陆模块。屏幕显示菜单提示,用户可根据需要选择相应功能。如下:请选择测试项目,加法请按 1 ,减法请按 2 ,混合运算请按任意键。student.Test();进行选择,是加法,减法,还是加减法都有,student.Test()调用add()函数,sub函数,addsub函数,当用户选择1进行加法计算,选择2进行加法运算,选择任意键进行加减混合运算选择相应的函数其思路相同,用for(a=rand()%51,b=rand()%51;a+b>50 || a+b<0 ; a=rand()%51,b=rand()%51;是假发运算的控制,for(a=rand()%51,b=rand()%51;a-b>50 || a-b<0 ; a=rand()%51,b=rand()%51;减法运算,for(a=rand()%51,b=rand()%51;a-b>50|| a-b<0||a+b>50||a+b<0;a=rand()%51,b=rand()%51;选择了for(int i=1;i<=10;i++)函数控制题, a=rand()%51,b=rand()%51;产生随机数的函数rand,rand()%51是产生的随机数都小于50,a+b>50||a+b<0||a-b>50 || a-b<0,a,b两数的和,差大于0小于50,确保算式没有超出1~2年级水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的;再用for(int j=1;j<=3;j++)控制三次答题机会,如果第一次学生答题错误系统会提示还有答题错误,还有俩次机会,否则就给出第一次答题正确的分数10分,如果第二次学生答题错误系统会提示还有答题错误,还有一次机会,否则就给出第三次答题正确的分数7分,如果第三次学生答题错误系统会提示还有答题错误,没有做题机会,系统给出正确的答案,否则就给出第三次答题正确的分数5分,实现这几部很简单采用了if,else语句判断,score[i]!=trueValue当输入值等于正确答案时,走else 语句判断得分情况,否则给出答题机会;每次做对一题flag=1,统计做对题的个数zen=zen+flag; sum统计的分情况sum=sum+score[i];当第一次做对题则first=1表示仅一次做对题,first1=first1+first;统计仅一次做对题的个数,second表示俩次做对题,second1=second1+second统计俩次做对题的个数,third表示三次做对题third1=third1+third;统计三次做对题的个数,那么答错题的个数10-zen,而答题的正确率为得分除以100乘以100%,

第3页

文档均来自网络,如有侵权请联系我删除文档

3.详细设计

3.1登录模块

3.11登录模块程序

void main()

{ cout<<" 一二年级测试题"<<endl<<endl;

cout<<" *☆☆☆☆☆☆☆小学数学测试软件☆☆☆☆☆☆☆☆☆* "<<endl;

cout<<" *********************************************** \n";

STUDENT student; //定义一个对象

while(1)

{

student.Input();//信息输入

student.Test();//进行选择,是加法,减法,还是都有

cout<<"do you want to continue?(Y/N)";

char ch;

cin>>ch;

if(ch=='n'||ch=='N')

break;

}

}

//============================================================== void STUDENT::Input()

{

cout<<"请输入你的学号:";

cin>>Num;

cout<<"请输入你的姓名:";

cin>>Name;

cout<<"************************************************************* *"<<endl;

}

//============================================================= void STUDENT::Test()

{

cout<<"请选择测试项目,加法请按1 ,减法请按2 ,混合运算请按任意键。"<<endl;

int Stest;

cin>>Stest;

switch(Stest)

{

第4页

文档均来自网络,如有侵权请联系我删除文档

case 1:

Add();

Output();

break;

case 2:

Sub();

Output();

break;

default:

AddSub();

Output();

break;

}

}

3.1.2.主要完成功能为:

当用户输入自己的学号以及姓名开始使用本系统,进入登陆模块。屏幕显示菜单提示,用户可根据需要选择相应功能。具体如下:请选择测试项目,加法请按 1 ,减法请按 2 ,混合运算请按任意键]。

3.1.3.主要使用思想:

在main()主函数中定义STUDENT student对象[2],并调用student.Input();信息输入,student.Test();进行选择,是加法,减法,还是加减法都有,在登录模块程序采用了调用以及输入输出函数!关键代码STUDENT student; //定义一个对象[2]

while(1)

{ student.Input();//信息输入

student.Test();//进行选择,是加法,减法,还是都有

cout<<"do you want to continue?(Y/N)";

char ch;

cin>>ch;

if(ch=='n'||ch=='N')

break;}

第5页

文档均来自网络,如有侵权请联系我删除文档

第 6 页

3.2加法运算模块

3.2.1.主要完成功能为:

当用户选择了1加法测试,屏幕随机出现10道加法测试题进行计算。

3.2.2.主要使用思想:

当用户选择1进行加法计算时,则选择了STUDENT::add()函数for(int 四个输出语句

While 函数 调用

student.I

nput()函

数 main()主函数

for(int i=1;i<=10;i++)

函数控制题10道题

for(a=rand()%51,b=rand()%51;a+b>50

|| a+b<0 ; a=rand()%51,b=rand()%51)

for(int j=1;j<=3;j++)

控制三次答题机会

STUDENT::Sub()函数

Else 每次答对题的得分 if(score[i]!=trueValue)控

制有三次输入的机会 调用 student.T est()函数

文档均来自网络,如有侵权请联系我删除文档

i=1;i<=10;i++)函数控制题10道题,for(a=rand()%51,b=rand()%51;a-b>50 || a-b<0 ; a=rand()%51,b=rand()%51产生)随机数的函数rand,rand()%51是产生的随机数都小于50,a+b>50 || a+b<0,a,b两数的和大于0小于50,确保算式没有超出1~2年级水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的;再用for(int j=1;j<=3;j++)控制三次答题机会,如果第一次学生答题错误系统会提示还有答题错误,还有俩次机会,否则就给出第一次答题正确的分数10分,如果第二次学生答题错误系统会提示还有答题错误,还有一次机会,否则就给出第三次答题正确的分数7分,如果第三次学生答题错误系统会提示还有答题错误,没有做题机会,系统给出正确的答案,否则就给出第三次答题正确的分数5分,实现这几部很简单采用了if,else语句判断,score[i]!=trueValue当输入值等于正确答案时,走else语句判断得分情况,否则给出答题机会;每次做对一题flag=1,统计做对题的个数zen=zen+flag; sum统计的分情况sum=sum+score[i];当第一次做对题则first=1表示仅一次做对题,first1=first1+first;统计仅一次做对题的个数,second表示俩次做对题,second1=second1+second统计俩次做对题的个数,third表示三次做对题third1=third1+third;统计三次做对题的个数,那么答错题的个数10-zen,而答题的正确率为得分除以100乘以100%,

3.3减法运算模块

3.3.1.主要完成功能为:

当用户选择了2减法测试,屏幕随机出现10道减法测试题进行计算。

3.3.2.主要使用思想:

第7页

文档均来自网络,如有侵权请联系我删除文档

第 8 页

当用户选择2进行加法计算时,则选择了STUDENT::Sub()[2]函数for(int i=1;i<=10;i++)函数控制题10道题,for(a=rand()%51,b=rand()%51;a-b>50 || a-b<0 ; a=rand()%51,b=rand()%51产生)随机数的函数rand[3],rand()%51是产生的随机数都小于50,a-b>50 || a-b<0,a,b 两数的差大于0小于50,确保算式没有超出1~2年级水平,只允许进行50以内的加减法,不允许两数之和或之差超出0~50的范围,负数更是不允许的;再用for(int j=1;j<=3;j++)控制三次答题机会,如果第一次学生答题错误系统会提示还有答题错误,还有俩次机会,否则就给出第一次答题正确的分数10分,如果第二次学生答题错误系统会提示还有答题错误,还有一次机会,否则就给出第三次答题正确的分数7分,如果第三次学生答题错误系统会提示还有答题错误,没有做题机会,系统给出正确的答案,否则就给出第三次答题正确的分数5分,实现这几部很简单采用了if ,else 语句判断,score[i]!=trueValue 当输入值等于正确答案时,走else 语句判断得分情况,否则给出答题机会;每次做对一题flag=1,统计做对题的个数zen=zen+flag; sum 统计的分情况sum=sum+score[i];当第一次做对题则first=1表示仅一次做对题,first1=first1+first;统计仅一次做对题的个数,second 表示俩次做对题,second1=second1+second 统计俩次做对题的个数,third 表示三次做对题third1=third1+third;统计三次做对题的个数,那么答错题的个数10-zen ,而答题的正确率为得分除以100乘以100%,

for(int i=1;i<=10;i++)

函数控制题10道题

for(a=rand()%51,b=rand()%51;a-b>50

|| a-b<0 ; a=rand()%51,b=rand()%51)

for(int j=1;j<=3;j++)

控制三次答题机会

STUDENT::Sub()函数

Else 每次答对题的得分 if(score[i]!=trueValue)控

制有三次输入的机会

文档均来自网络,如有侵权请联系我删除文档

第 9 页 3.4加减混合运算模块

3.4.1.主要完成功能为:

当用户选择了其它任意数字键加减混合法测试,屏幕随机出现10道加减法测试题进行计算。

3.4.2主要使用思想:

当用户选择1进行加法计算时,则选择了STUDENT::add()函数[2]for(int i=1;i<=10;i++)函数控制题10道题,c=rand()%3[3],控制进行加法还是减法运算for(a=rand()%51,b=rand()%51;a+b>50||a+b<0||a-b>50||a-b<0;a=rand()%51,b=rand()%51)产生)随机数的函数rand[3],rand()%51是产生的随机数都小于50,a+b>50 || a+b<0 || a-b>50 || a-b<0;a,b 两数的和,差大于0小于50,确保算式没有超出1~2年级水平,只允许进行50以内的加减法,不允许两数之和或之差for(int i=1;i<=10;i++)

函数控制题10道题

STUDENT::addSub()函数

c=rand()%3

;

C=1加法 C=2减法;

if(score[i]!=trueValue)控制有三次输入的机会 Else 每次答对题的得分

for(int j=1;j<=3;j++) 控制三次答题机会 for(a=rand()%51,b=rand()%51;a+b>50 || a+b<0

|| a-b>50 || a-b<0; a=rand()%51,b=rand()%51)

文档均来自网络,如有侵权请联系我删除文档

第 10 页 超出0~50的范围,负数更是不允许的;再用for(int j=1;j<=3;j++)控制三次答题机会,如果第一次学生答题错误系统会提示还有答题错误,还有俩次机会,否则就给出第一次答题正确的分数10分,如果第二次学生答题错误系统会提示还有答题错误,还有一次机会,否则就给出第三次答题正确的分数7分,如果第三次学生答题错误系统会提示还有答题错误,没有做题机会,系统给出正确的答案,否则就给出第三次答题正确的分数5分,实现这几部很简单采用了if ,else 语句判断,score[i]!=trueValue 当输入值等于正确答案时,走else 语句判断得分情况,否则给出答题机会;每次做对一题flag=1,统计做对题的个数zen=zen+flag; sum 统计的分情况sum=sum+score[i];当第一次做对题则first=1表示仅一次做对题,first1=first1+first;统计仅一次做对题的个数,second 表示俩次做对题,second1=second1+second 统计俩次做对题的个数,third 表示三次做对题third1=third1+third;统计三次做对题的个数,那么答错题的个数10-zen ,而答题的正确率为得分除以100乘以100%,

3.5每种运算的实验结果

3..5.1 加法运算的实验结果

文档均来自网络,如有侵权请联系我删除文档

3..5.2 减法运算的实验结果

第11页

文档均来自网络,如有侵权请联系我删除文档

3..5.3加减混合运算的实验结果

3.6 使用软件:Microsoft Visual C++ 6.0

四.课程设计感想

这次课设使我受益匪浅,得以把以前学的凌乱知识点综合运用起来,对C++编程也有了更深一步的体会,同时感到综合运用知识还有一定的困难,发现自己有一些基础知识还不很扎实,需要勤加训练,加强记忆。在近三周的编程中我学到了很多,平时学习中不注意的细节,在这次编程中深切体会到它的重要性。对编程中错误的自我更正,增强了自我调试程序,解决问题的能力。总之,本次课设为我们提

第12页

文档均来自网络,如有侵权请联系我删除文档

供了一个检测学习,锻炼能力,认识不足的平台,很高兴能有这样一个机会锻炼自我!小学生测验在很多情况下,特别是在众多的科学研究领域中,一个时间跨度较大的程序是很有参考价值的。C++面向对象程序设计语言充分发挥了其自身无与伦比的优越性,用极短的程序文本填补了这一领域的空白,同时用铁的事实强有力的告诉世人:C++面向对象程序设计语言作为计算机语言家族的新生事物,其发展前景是极为广阔的。经过上一个学期对《C++面向对象程序设计》的学习,我们学习了理论知识,了解了C++语言程序设计的思想,这些知识都为我们的下一步学习打下了坚实的基础。通过课程设计,一方面是为了检查我们一个学期来我们学习的成果,另一方面也是为了让我们进一步的掌握和运用它,同时也让我们认清自己的不足之处和薄弱环节,加以弥补和加强。在编写程序过程中也体会到了做事情一顶要细心、认真。更加知道了要掌握好基础知识。还有体会到了成功的感觉!在的设计过程中更加体会到了团队合作的重要性,“一个诸葛亮比不上三个臭皮匠。”知道了只有团队合作才会更好的完成设计!也体会到以后在工作中团队合作的必要性和重要性!通过本项课程设计也培养了我独立思考、综合运用所学有关相应知识的能力,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!由于C++语言是国内外得到迅速推广应用的一种语言。C++语言功能丰富,表达能力强,使用灵活方便,应用面广,目标程序效率高,可移植性好,既具有高级语言的优点,又具有低级语言的许多特点。通过这次的c++语言程序设计更加了解了c++语言的好处和其可用性!在这次课程设计中也知道了自己的动手能力不强有待进一部的提高!在设计过程中不能够把书本上的知识与实践相结合,这也就增加了设计不好该程序的想法!在设计过程中的一次次设计错误增加了我放弃的想法!不过经过大家的努力终于完成了课程设计!完成该程序后想起自己以前的每一次对自己失去信心,就觉得并不是在知识掌握上打败了,而是自己对自己缺乏信心!只要自己对自己不失去信心相信就可以完成那些以前认为完成不了的事情!也让我懂得了要想成功首先就必须有很强的自信心!懂得了自己以后要在做任何事情时都要自信!当自己都不相信自己能够成功时还可能会获得成功吗?在C++语言程序设计的过程中也知道了自己在以前的学习中有很大的不足导致在设计过程中出现了很多的问题,有些地方看不懂也不知道怎么去设计,但是在设计过程中也学习了很多,掌握了自己以前没有学好的知识,虽然一时可以掌握完以前没有学好的知识,不过也给自己敲响了警钟,在学习中不可以伏于表面,要想学好每一门课程都要踏踏实实,做什么都不是给别人看的!都是要更好的掌握该门知识,提高自己的自身的修养,提高自己的能力!为以后的工作打下良好的知识基础和技能基础!

第13页

文档均来自网络,如有侵权请联系我删除文档

五.参考文献

谭浩强.C++程序设计清华大学出版社2006

郑振杰.C++程序设计北京:人民邮电出版社,2005 柴欣,C/C++程序设计河北大学出版社,2002 余苏宁、王明福,C++程序设计北京:高等教育出版社,2003 吕凤翥.C++语言程序设计(第2版).电子工业出版社,2007.2 李云清、杨庆红、揭安全.数据结构[M].人民邮电大学出版社,2004.6

六.附件(程序代码)

#include<iostream>

#include<iomanip>

#include<time.h> //用到了time函数,所以要有这个头文件

#include<stdlib.h>//用到了srand函数,所以要有这个头文件

using namespace std;

class STUDENT //定义一个STUDENT类

{ private:

char Num[20];//学号

char Name[10];//姓名

int age;//年龄

int Score;//成绩

public:

第14页

文档均来自网络,如有侵权请联系我删除文档

void Input();//信息输入

void Output();//输出成绩

void Add();

void Sub();

void AddSub();

void Test();//进行选择,是加法,减法,还是都有

};

void main()

{ cout<<"**************************************************

\n";

cout<<"*☆☆☆☆☆☆☆小学数学测试软件☆☆☆☆☆☆☆☆☆* "<<endl;

cout<<" 一二年级测试题"<<endl;

cout<<" (Designed by CMG)"<<endl;

cout<<"*☆☆☆☆☆☆☆小学数学测试软件☆☆☆☆☆☆☆☆☆* "<<endl;

cout<<"**************************************************

\n";

STUDENT student ; //定义一个对象

while(1)

{ student.Input();//信息输入

student.Test();//进行选择,是加法,减法,还是都有

cout<<"do you want to continue?(Y/N)";

char ch;

cin>>ch;

if(ch=='n'||ch=='N')

break;

}}

//============================================================= ========

void STUDENT::Input()

{ cout<<"请输入你的学号:";

cin>>Num;

cout<<"请输入你的姓名:";

cin>>Name;

cout<<"请输入你的年龄:";

cin>>age;

cout<<"**************************************************"<<endl;

}

//============================================================= ========

void STUDENT::Test()

第15页

文档均来自网络,如有侵权请联系我删除文档

{ cout<<"请选择测试项目:加法请按1 ,减法请按2 ,混合运算请按其他任意数字键..."<<endl;

int Stest;

cin>>Stest;

switch(Stest)

{case 1:

Add();

Output();

break;

case 2:

Sub();

Output();

break;

default:

AddSub();

Output();

break;

}}

//============================================================= ========

void STUDENT::Add()//加法运算

{int a,b,score[10],trueValue,sum=0,zen=0,flag,first,second,third,

first1=0,second1=0,third1=0;

/*数a=rand()%51,b=rand()%51控制a,b的值不超过50 sum累计分数,flag=1标志答案正确,zen为累计正确题的个数,first第一次正确的个数,second第二次正确的个数,third第三次正确的个数,first1累计仅一次做对题的个数,second1为俩次才能完成题的个数,third1为三次做对题的个数*/

for(int i=1;i<=10;i++) //控制题10道题

{

for(a=rand()%51,b=rand()%51;a+b>50 || a+b<0 ; a=rand()%51,b=rand()%51) { }

for(int j=1;j<=3;j++) //J控制得分的情况

{ flag=0;

first=0;

second=0;

third=0;

cout<<"第"<<i<<"个:"<<a<<"+"<<b<<"=";

trueValue=a+b;

cin>>score[i];

if(score[i]!=trueValue)

{ if(j==1)

{ cout<<"答案错误,你还有俩次机会,请重新输入"<<endl;

score[i]=0; //清空上次错误答案

}

第16页

文档均来自网络,如有侵权请联系我删除文档

else

if(j==2)

{

cout<<"答案错误,你还有最后一次机会,请重新输入"<<endl;

score[i]=0; //清空上次错误答案

}

else

{ cout<<"答案错误,很遗憾你没有做题的机会了"<<endl;

cout<<"正确答案是:"<<" : "<<trueValue<<endl;

score[i]=0;

}

}

else

{ if(j==1)

{ score[i]=10;

flag=1;

first=1;

}

else

if(j==2)

{ score[i]=7;

flag=1;

second=1;

}

else

{ score[i]=5;

flag=1;

third=1;

}

break;

}

}

sum=sum+score[i];

zen=zen+flag; //做对题的个数

first1=first1+first;

second1=second1+second;

third1=third1+third;

}

Score=sum; //总分数

cout<<"******************统计******************"<<endl;

cout<<"共做对"<<zen<<"个题"<<endl;

cout<<"共做错"<<10-zen<<"个题"<<endl;

cout<<"仅一次做对"<<first1<<"个题"<<endl;

第17页

文档均来自网络,如有侵权请联系我删除文档

cout<<"俩次才做对"<<second1<<"个题"<<endl;

cout<<"三次才做对"<<third1<<"个题"<<endl;

cout<<"此次的正确率是:"<<Score<<"%"<<endl;

}

//============================================================= ========

void STUDENT::Sub()//减法运算

{int a,b,score[10],trueValue,sum=0,zen=0,flag,first,second,third,

first1=0,second1=0,third1=0;

/*数a=rand()%51,b=rand()%51控制a,b的值不超过50 sum累计分数,flag=1标志答案正确,zen为累计正确题的个数,first第一次正确的个数,second第二次正确的个数,third第三次正确的个数,first1累计仅一次做对题的个数,second1为俩次才能完成题的个数,third1为三次做对题的个数*/

for(int i=1;i<=10;i++) //控制题10道题

{

for(a=rand()%51,b=rand()%51;a-b>50||a-b<0;a=rand()%51,b=rand()%51)

{ }

for(int j=1;j<=3;j++) //J控制得分的情况

{ flag=0;

first=0;

second=0;

third=0;

cout<<"第"<<i<<"个:"<<a<<"-"<<b<<"=";

trueValue=a-b;

cin>>score[i];

if(score[i]!=trueValue)

{ if(j==1)

{ cout<<"答案错误,你还有俩次机会,请重新输入"<<endl;

score[i]=0; //清空上次错误答案

}

else

if(j==2)

{

cout<<"答案错误,你还有最后一次机会,请重新输入"<<endl;

score[i]=0; //清空上次错误答案

}

else

{ cout<<"答案错误,很遗憾你没有做题的机会了"<<endl;

cout<<"正确答案是:"<<" : "<<trueValue<<endl;

score[i]=0;

}

}

else

第18页

文档均来自网络,如有侵权请联系我删除文档

{ if(j==1)

{ score[i]=10;

flag=1;

first=1;

}

else

if(j==2)

{ score[i]=7;

flag=1;

second=1;

}

else

{ score[i]=5;

flag=1;

third=1;

}

break;

}

}

sum=sum+score[i];

zen=zen+flag; //做对题的个数

first1=first1+first;

second1=second1+second;

third1=third1+third;

}

Score=sum; //总分数

cout<<"******************统计******************"<<endl;

cout<<"共做对"<<zen<<"个题"<<endl;

cout<<"共做错"<<10-zen<<"个题"<<endl;

cout<<"仅一次做对"<<first1<<"个题"<<endl;

cout<<"俩次才做对"<<second1<<"个题"<<endl;

cout<<"三次才做对"<<third1<<"个题"<<endl;

cout<<"此次的正确率是:"<<Score<<"%"<<endl;

}

//============================================================= ========

void STUDENT::AddSub()

{

int a,b,c,score[10],trueValue,sum=0,zen=0,flag,first,second,third,

first1=0,second1=0,third1=0;

/*数a=rand()%51,b=rand()%51控制a,b的值不超过50 sum累计分数,flag=1标志答案正确,zen为累计正确题的个数,first第一次正确的个数,second第二次正

第19页

本文来源:https://www.bwwdw.com/article/r2zm.html

Top