You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

C++实现乘法题程序:支持重复运行至输入哨兵值并生成报告

嘿,作为Stack Overflow的新用户,先欢迎你加入这个社区!真的很高兴你能在这里表达感谢——很多时候我们都是在不经意间互相帮助的,这就是社区的魅力呀。

针对你要写的乘法题练习程序,我来给你梳理一个清晰的伪代码方案,完全贴合教授的要求:

乘法题练习程序伪代码

关键变量说明

先定义几个核心变量来跟踪练习状态:

  • correct_count: 记录答对的题数
  • total_questions: 记录总共出的题数
  • sentinel_value: 自定义的停止触发值,比如选"quit"或者数字0都可以

完整伪代码实现

// 初始化统计变量
SET correct_count = 0
SET total_questions = 0
SET sentinel_value = "quit"  // 可替换为你想要的哨兵值,比如0

// 给用户的初始提示
PRINT "欢迎来到乘法题练习!输入「" + sentinel_value + "」即可结束练习。"

// 主循环:持续出题直到输入哨兵值
LOOP:
    // 生成1-10之间的随机乘数(范围可按需调整)
    SET num1 = RANDOM(1, 10)
    SET num2 = RANDOM(1, 10)
    SET correct_answer = num1 * num2

    // 出题并获取用户输入
    PRINT num1 + " × " + num2 + " = ? (输入「" + sentinel_value + "」结束练习)"
    GET user_input

    // 优先检查是否触发停止条件
    IF user_input == sentinel_value THEN
        EXIT LOOP
    END IF

    // 统计答题数并验证答案
    total_questions = total_questions + 1
    IF user_input == correct_answer THEN
        PRINT "答对啦!👍"
        correct_count = correct_count + 1
    ELSE
        PRINT "答错了,正确答案是 " + correct_answer + " 😞"
    END IF

// 练习结束,生成结果报告
PRINT "\n=== 练习结果报告 ==="
PRINT "总共答题数:" + total_questions
PRINT "答对题数:" + correct_count
IF total_questions > 0 THEN
    SET accuracy = (correct_count / total_questions) * 100
    PRINT "正确率:" + accuracy + "%"
ELSE
    PRINT "你没有回答任何题目哦~"
END IF

重点细节提醒

  • 哨兵值判断优先级:一定要先检查用户输入是不是哨兵值,再去统计答题数,不然会把退出指令当成错题算进去
  • 随机数范围:如果需要更大的数字,直接调整RANDOM()的参数就行,比如改成RANDOM(1, 20)生成1到20的数
  • 边界处理:加了用户没答题就退出的情况,避免出现除以0的错误(如果用百分比计算的话)

内容的提问来源于stack exchange,提问作者PJ_Fan99

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:04:36