C语言实现自动生成四则运算题目并判断对错

你是否正在学习C语言编程?你想挑战一下自己,编写一个可以自动生成四则运算题目的程序吗?

在这篇博客中,我将分享一段用C语言编写的四则运算程序,该程序可以根据用户的答题情况自动调整难度等级,非常适合编程初学者练习。

代码实现

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

int generateNum(int min, int max) {
    return rand() % (max - min + 1) + min;
}

char generateOperator() {
    char operators[] = {'+', '-', '*', '/'};
    int index = rand() % 4;
    return operators[index];
}

int evaluateExpression(int num1, int num2, char operator) {
    switch (operator) {
        case '+':
            return num1 + num2;
        case '-':
            return num1 - num2;
        case '*':
            return num1 * num2;
        case '/':
            return num1 / num2;
        default:
            return 0;
    }
}

int main() {
    srand(time(0));
    int level = 1;
    int score = 0;
    int max_score = 5;

    while (1) {
        int num1, num2, result;
        char operator;
        char answer[10];

        if (level == 1) {
            num1 = generateNum(1, 9);
            num2 = generateNum(1, 9);
        } else if (level == 2) {
            num1 = generateNum(10, 99);
            num2 = generateNum(10, 99);
        } else if (level == 3) {
            num1 = generateNum(100, 999);
            num2 = generateNum(100, 999);
        }

        operator = generateOperator();

        printf('题目: %d %c %d\n', num1, operator, num2);
        scanf('%s', answer);

        result = evaluateExpression(num1, num2, operator);

        if (atoi(answer) == result) {
            printf('回答正确!\n');
            score++;
        } else {
            printf('回答错误!\n');
            score = 0;
        }

        if (score == max_score) {
            level++;
            score = 0;
            printf('恭喜你进入下一级!\n');
        }
    }

    return 0;
}

代码讲解

  1. 引入头文件: 程序首先引入了三个头文件:stdio.hstdlib.htime.h,分别用于输入输出、随机数生成和时间操作。
  2. 生成随机数: generateNum 函数用于生成指定范围内的随机数,用于生成题目中的运算数。
  3. 生成运算符: generateOperator 函数用于随机选择一个运算符 (+、-、*、/),用于生成题目。
  4. 计算表达式: evaluateExpression 函数用于计算表达式的值,使用 switch 语句根据不同的运算符进行相应的计算。
  5. 主函数: main 函数是程序的入口点,程序从这里开始执行。
    • 首先,使用 srand(time(0)) 初始化随机数生成器。
    • 然后,程序进入一个无限循环,不断生成题目并判断用户输入的答案是否正确。
    • 根据用户的答题情况,程序会调整难度等级,并输出相应的提示信息。

总结

这篇博客分享了一段使用C语言编写的四则运算程序,程序简单易懂,非常适合编程初学者学习。程序中使用了随机数、循环、条件判断等基本语法,可以帮助初学者巩固基础知识,并锻炼编程思维。

C语言实现自动生成四则运算题目并判断对错

原文地址: https://www.cveoy.top/t/topic/CtR 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录