当前位置: 首页 > news >正文

C语言程序设计——小学生计算机辅助教学系统

题目:小学生计算机辅助教学系统

编写一个程序,帮助小学生学习乘法。然后判断学生输入的答案对错与否,按下列任务要求以循序渐进的方式分别编写对应的程序并调试。

  • 任务1 程序首先随机产生两个1—10之间的正整数,在屏幕上打印出问题。例如:6*7=?然后输入答案,如果输入答案正确,则显示“Right!”,然后问下一个问题;否则显示“Wrong!Please try again.”,然后提示学生重做,直到答对为止。(略)
    • 任务2 在任务1的基础之上,当学生回答错误时,最多给三次重做,三次仍未做对,则显示“Wrong!You have tried three times!Test over!”,程序结束。
      • 任务3 在任务1的基础上,连续做10道乘法运算题,不给机会重做,若学生回答正确,则显示“Right!”,否则显示“Wrong!”。10道题全部做完后,按每题10分统计并输出总分,并输出学生的回答正确率。
        • 任务4 在任务2的基础上,为了提高程序的可读性,完善人机对话界面,从而达到来吸引学生的注意力,故要为学生输入的每一个正确或错误的答案输出不同的评价,正确的答案评价分为四个等级:“Very good!”、“Excellent!”、“Nice work!”、“Keep up the good work!”,错误的答案评价分为三个等级:“No.Please try again.”、“Wrong.Try once more.” ,“Don’t give up!”。
// 任务2
#include <stdio.h>
#include <stdlib.h>
#include <time.h>int main(int argc, char const *argv[]) {int computerProduct, myProduct, num1, num2, redoNumber;srand(time(NULL));for (;;) {redoNumber = 0;// 产生两个 1~10 之间的随机数num1 = rand() % 10 + 1;num2 = rand() % 10 + 1;// 电脑计算结果computerProduct = num1 * num2;do {printf("%d * %d = ? ", num1, num2);// 我的计算结果scanf("%d", &myProduct);if (myProduct == computerProduct) {printf("Right!\n");break;}// 若同一题连续错误三次则直接结束测试if (redoNumber == 3) {printf("Wrong!You have tried three times!Test over!");break;} else printf("Wrong!Please try again.\n");redoNumber++;} while (myProduct != computerProduct);if (redoNumber == 3) break;}return 0;
}
// 任务3
#include <stdio.h>
#include <stdlib.h>
#include <time.h>int main(int argc, char const *argv[]) {int computerProduct, myProduct, num1, num2, winNumber = 0, questionsNumber, i;srand(time(NULL));for (questionsNumber = 1; questionsNumber <= 10; questionsNumber++) {// 产生两个 1~10 之间的随机数num1 = rand() % 10 + 1;num2 = rand() % 10 + 1;// 电脑计算结果computerProduct = num1 * num2;printf("%d * %d = ? ", num1, num2);scanf("%d", &myProduct);if (myProduct == computerProduct) {printf("Right!\n");winNumber += 10;} else printf("Wrong!\n");}// 统计分数printf("学生得分:%d\n", winNumber);// 统计得分率(questionsNumber++最后累计到 11) printf("学生得分率:%d%%", winNumber * 10 / --questionsNumber);return 0;
}
// 任务4
#include <stdio.h>
#include <stdlib.h>
#include <time.h>int main(int argc, char const *argv[]) {int computerProduct, myProduct, num1, num2, redoNumber, winNumber = 0;srand(time(NULL));for (;;) {// 只要出现正确则把累计的错误次数清零redoNumber = 0;// 产生两个 1~10 之间的随机数num1 = rand() % 10 + 1;num2 = rand() % 10 + 1;// 电脑计算结果computerProduct = num1 * num2;do {// 只要出现错误则把累计的正确次数清零if (redoNumber != 0)winNumber = 0;printf("%d * %d = ? ", num1, num2);scanf("%d", &myProduct);if (myProduct == computerProduct) {winNumber++;// 输出对应正确次数的语句switch (winNumber) {case (1):printf("Keep up the good work!");break;case (2):printf("Nice work!");break;case (3):printf("Excellent!");break;default:printf("Very good!");break;}printf("\n");break;} else redoNumber++;switch (redoNumber) {case (1):printf("No.Please try again.");break;case (2):printf("Wrong.Try once more.");break;case (3):printf("Don't give up!");break;}if (redoNumber == 3) break;printf("\n");} while (1);if (redoNumber == 3) break;}return 0;
}

结果展示

在这里插入图片描述

http://www.lryc.cn/news/146365.html

相关文章:

  • SQL自动递增的列恢复至从0开始
  • 介绍一下CDN
  • 2023年最新 Github Pages 使用手册
  • docker 安装 Nginx
  • 【NLP的python库(01/4) 】: NLTK
  • Java IDEA Web 项目 1、创建
  • leetcode316. 去除重复字母(单调栈 - java)
  • 零散笔记:《Spring实战》Thymeleaf
  • WordArt Designer:基于用户驱动与大语言模型的艺术字生成
  • 【C进阶】深度剖析数据在内存中的存储
  • TortoiseGit安装
  • 巨人互动|游戏出海游戏出海的趋势如何
  • k8s 安装 istio(二)
  • Postman中参数区别及使用说明
  • 基于python+pyqt的opencv汽车分割系统
  • 游戏设计的主要部分
  • 架构师成长之路Redis第二篇|Redis配置文件参数讲解
  • jsp+servlet+mysql阳光网吧管理系统
  • Next.js基础语法
  • selenium进阶之web自动化项目框架搭建(Python版)
  • qt设计界面
  • 《C和指针》笔记12: 存储类型(自动变量、静态变量和寄存器变量)
  • 无限计算力:探索云计算的无限可能性
  • 【赋权算法】Python实现熵权法
  • docker之 Consul(注册与发现)
  • 用NeRFMeshing精确提取NeRF网络中的3D网格
  • 权限提升-Windows本地提权-AT+SC+PS命令-进程迁移-令牌窃取-getsystem+UAC
  • 深入了解Kubernetes(k8s):安装、使用和Java部署指南(持续更新中)
  • Oracle的学习心得和知识总结(二十九)|Oracle数据库数据库回放功能之论文三翻译及学习
  • 新版100句学完7000雅思单词