小学生算数

来源:互联网 发布:打开软件分辨率低 编辑:程序博客网 时间:2024/06/11 10:32
/*   *Copyright (c) 2016   *All rights reserved.   *文件名称:test.cpp   *作    者:史红浩   *完成日期:2016年 3 月 17 日   *版 本 号:v1.0   *   *问题描述:小学生算数。随机0到100出题,加减乘除随机,共十题。最后输出分数。  *输入描述:输入答案。 *输出描述:最后分数。  */ #include<iostream>#include<stdlib.h>using namespace std;void arrangement(int *,int *); //为了防止减法和除法出现第一个数大第二个数小而做的函数int main(){    int i,score=0,result,num1,num2;    for(i=1;i<=10;i++)    {        cout<<"第"<<i<<"题:"<<endl;        int RanNum;        RanNum=rand()%4;   //用RanNum随机数来控制加减乘除        num1=rand()%100;        num2=rand()%100;        switch(RanNum)        {        case 0:            cout<<num1<<"+"<<num2<<"=?"<<endl;break;        case 1:arrangement(&num1,&num2);            cout<<num1<<"-"<<num2<<"=?"<<endl;break;        case 2:            cout<<num1<<"*"<<num2<<"=?"<<endl;break;        case 3:arrangement(&num1,&num2);if(num2==0)//为了防止除数=0而使程序崩溃{i--;//i--是为了防止跳出程序后少出一道题break;}            cout<<num1<<"÷"<<num2<<"=?"<<endl;break;        }        cin>>result;        switch(RanNum)        {        case 0:            if(num1+num2==result)                score++;break;        case 1:            if(num1-num2==result)                score++;break;        case 2:            if(num1*num2==result)                score++;break;        case 3:            if(num1/num2==result)                score++;break;        }    }    cout<<"你的分数是"<<score<<endl;return 0;}void arrangement(int *pNum1,int *pNum2){int temp;if(*pNum1<*pNum2){temp=*pNum1;*pNum1=*pNum2;*pNum2=temp;}}
<span style="font-family:Arial;BACKGROUND-COLOR: #ffffff">运行结果:</span>
<img src="http://img.blog.csdn.net/20160317092109334?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
0 0
原创粉丝点击