随机生成30道100以内的四则运算题目

时间:2022-07-28 20:31:01

1、题目要求:除了整数以外,还要支持真分数的四则运算。

2、设计思路:

  (1)操作数的产生:

    a.利用宏定义定义随机函数。

    b.引用随机随机函数产生随机数,并定义随机数的取值范围。

  (2)运算符问题的解决:

    a.引用随机函数产生0~3四个随机数

    b.引用swatch、case结构,随机选择运算符号:0:加 1:减 2:乘 3:除

  (3)运行结果的输出:

    利用for循环结构,顺序输出30道四则运算题目,并显示在屏幕上。

  (4)未解决问题:

    随机产生真分数计算的问题还没有解决,希望通过以后的努力可以解决此问题。

3、源程序代码:

  

//随机生成30道100以内的四则运算题目
//胡浩特 2016/3/5

#include <iostream>
using namespace std;

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define random(x) (rand()%x)

int main()
{
    int i, a, b;
    int mode = 0,result=0;//0:加 1:减 2:乘 3:除 
    
    for (i = 0; i<30; i++) //随机生成三十道题目
    {
        a = random(100); //生成一个0~99之间的随机数
        b = random(100); //生成一个0~99之间的随机数
        mode = random(4); //生成一个0~3之间的随机数,代表运算符
        cout<< a; //打印算式
        switch (mode) //确定运算符
        {
        case 0:
            cout<<"+";
            result = a + b; 
            break;
        case 1:
            cout<<"-";
            result = a - b; 
            break;
        case 2:
            cout<<"*";
            result = a * b; 
            break;
        case 3:
            cout<<"/";
            result = a / b; 
            break;
        default:
            cout<<"somethingis wrong!\n";
            break;
        }
        cout<< b<<"="<<endl;
    
    }
    return 0;
}