Chris.5128 2022-12-21 12:11 采纳率: 75%
浏览 118
已结题

c++ 小学生算术练习系统

小学生算术练习系统
包括:
菜单
单项加法运算
单项减法运算
混合运算
退出系统

要求利用函数 写单项减法运算和退出系统
有偿~比较hurry!

img

  • 写回答

4条回答 默认 最新

  • |__WhoAmI__| 2022-12-21 12:54
    关注
    #include <iostream>
    #include <cstdlib> // 用于生成随机数
    #include <ctime>   // 用于获取当前时间
    
    using namespace std;
    
    // 定义函数: 单项加法练习
    void additionExercise()
    {
        int n;
        cout << "请输入要练习的加法题数: ";
        cin >> n;
    
        // 随机生成 n 道加法题
        int correct = 0;     // 统计学生回答正确的题数
        int score = 100 / n; // 计算每道题的分数
        for (int i = 1; i <= n; i++)
        {
            int a = rand() % 21; // 生成 [0, 20] 之间的随机数 a
            int b = rand() % 21; // 生成 [0, 20] 之间的随机数 b
            int c = a + b;       // 计算正确答案
            cout << "第" << i << "题: " << a << " + " << b << " = ";
            int answer;
            cin >> answer;
            if (answer == c)
            {
                cout << "回答正确!" << endl;
                correct++;
            }
            else
            {
                cout << "回答错误。正确答案是: " << c << endl;
            }
        }
    
        // 输出最终成绩
        cout << "本次练习的分数是: " << correct * score << "分" << endl;
    }
    
    // 定义函数: 单项减法练习
    void subtractionExercise()
    {
        int n;
        cout << "请输入要练习的减法题数: ";
        cin >> n;
    
        // 随机生成 n 道减法题
        int correct = 0;     // 统计学生回答正确的题数
        int score = 100 / n; // 计算每道题的分数
        for (int i = 1; i <= n; i++)
        {
            int a, b;
            cout << "请输入第" << i << "题的被减数和减数: ";
            cin >> a >> b;
            int c;
            if (a >= b)
            {
                c = a - b; // 计算正确答案
            }
            else
            {
                c = b - a; // 计算正确答案
            }
            cout << "第" << i << "题: " << a << " - " << b << " = ";
            int answer;
            cin >> answer;
            if (answer == c)
            {
                cout << "回答正确!" << endl;
                correct++;
            }
            else
            {
                cout << "回答错误。正确答案是: " << c << endl;
            }
        }
    
        // 输出最终成绩
        cout << "本次练习的分数是: " << correct * score << "分" << endl;
    }
    
    // 定义函数: 加减混合练习
    void mixedExercise()
    {
        int n;
        cout << "请输入要练习的加减混合题数: ";
        cin >> n;
    
        // 随机生成 n 道加减混合题
        int correct = 0;     // 统计学生回答正确的题数
        int score = 100 / n; // 计算每道题的分数
        for (int i = 1; i <= n; i++)
        {
            int a = rand() % 21; // 生成 [0, 20] 之间的随机数 a
            int b = rand() % 21; // 生成 [0, 20] 之间的随机数 b
            int c;
            if (rand() % 2 == 0)
            { // 随机生成 0 或 1,决定是加法还是减法
                cout << "第" << i << "题: " << a << " + " << b << " = ";
                c = a + b; // 计算正确答案
            }
            else
            {
                cout << "第" << i << "题: " << a << " - " << b << " = ";
                if (a >= b)
                {
                    c = a - b; // 计算正确答案
                }
                else
                {
                    c = b - a; // 计算正确答案
                }
            }
            int answer;
            cin >> answer;
            if (answer == c)
            {
                cout << "回答正确!" << endl;
                correct++;
            }
            else
            {
                cout << "回答错误。正确答案是: " << c << endl;
            }
        }
    
        // 输出最终成绩
        cout << "本次练习的分数是: " << correct * score << "分" << endl;
    }
    
    int main()
    {
        // 初始化随机数生成器
        srand(time(NULL));
    
        // 显示主菜单
        while (true)
        {
            cout << "小学生算术运算练习系统" << endl;
            cout << "1. 单项加法练习" << endl;
            cout << "2. 单项减法练习" << endl;
            cout << "3. 加减混合练习" << endl;
            cout << "4. 退出系统" << endl;
            cout << "请输入菜单选项: ";
            int option;
            cin >> option;
    
            // 根据用户的输入执行相应的功能
            if (option == 1)
            {
                additionExercise();
            }
            else if (option == 2)
            {
                subtractionExercise();
            }
            else if (option == 3)
            {
                mixedExercise();
            }
            else if (option == 4)
            {
                break;
            }
            else
            {
                cout << "输入无效。请重新输入。" << endl;
            }
        }
    
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 12月30日
  • 已采纳回答 12月22日
  • 修改了问题 12月21日
  • 创建了问题 12月21日

悬赏问题

  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。
  • ¥20 CST怎么把天线放在座椅环境中并仿真