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 运动想象脑电信号数据集.vhdr
  • ¥15 三因素重复测量数据R语句编写,不存在交互作用
  • ¥15 微信会员卡等级和折扣规则
  • ¥15 微信公众平台自制会员卡可以通过收款码收款码收款进行自动积分吗
  • ¥15 随身WiFi网络灯亮但是没有网络,如何解决?
  • ¥15 gdf格式的脑电数据如何处理matlab
  • ¥20 重新写的代码替换了之后运行hbuliderx就这样了
  • ¥100 监控抖音用户作品更新可以微信公众号提醒
  • ¥15 UE5 如何可以不渲染HDRIBackdrop背景
  • ¥70 2048小游戏毕设项目