小学数学练习

本文介绍了如何编写一个针对小学生设计的数学练习程序,该程序包括加、减、乘、除四种运算,要求用户输入符合规定的ID,进行10道题目的测试,并详细描述了在编程过程中遇到的问题和解决方案,如账号格式验证、随机运算符生成、结果控制在100以内、结果存储以及读取等环节。
摘要由CSDN通过智能技术生成

小学数学练习

实验内容
编写一个帮助小学生练习数学的程序,帮助小学生练习 100 以内的四种数学运算:加、减、乘、除。
实验要求
a) 程序应先询问用户的 ID 号(ID 号包括两个大写字母和 4 位数字),例如:
请输入 用户 ID
号 :AB1234
程序应对输入的 ID 号验证,符合 ID 号要求的格式,然后程序提示三种选择:
(1)开始测试
(2)检查分数
(3)退出
b) 测试:该程序将给出 10 道数学题,例如: 12 * 3 =36 48 + 32 =80 „56 / 28 =2
主要仪器设备-台式或笔记本电脑
实验记录(写出实验内容中程序代码和运行结果)(可分栏或加页)
程序代码:

/*1. 小学数学练习
1.1【问题描述】
编写一个帮助小学生练习数学的程序,帮助小学生练习 100 以内的四种数学运算:加、减、乘、除。
1.2【基本要求】
a) 程序应先询问用户的 ID 号(ID 号包括两个大写字母和 4 位数字),例如:
请输入用户 ID 号:AB1234
程序应对输入的 ID 号验证,符合 ID 号要求的格式,然后程序提示三种选择:
(1)开始测试
(2)检查分数
(3)退出
b) 测试:该程序将给出 10 道数学题,例如:
12 * 3 =36
48 + 32 =80
56 / 28 =2
注意:
i)学生将依次回答每一个问题(在等于号后面给出答案),然后给出下一道题。
ii)试题应包含四种数学运算:加、减、乘、除,它们是随机产生的。相邻的问题应该是不同的操作,
每个操作必须至少出现一次。
iii)为每道题随机生成数字,但必须确保参与运算的数字和结果都小于 100 且大于零的整数。
iv)十道题做完后,记录学生完成这十道题所用的时间。
v)给每个学生一个分数。将该学生的 ID、成绩和使用时间保存到一个名为 record.txt 的文件中。
vi)在屏幕上输出以下信息:
问题 | 正确答案 | 你的答案
c) 成绩检查:从文件“record.txt”中列出该学生的所有历史成绩。例如:
你以前的记录是:
AB1234 80 150 秒 
AB1234 50 182 秒 
AB1234 90 98 秒*/
#include<string.h>
#include <stdio.h>
#include <ctype.h>
#include <time.h>
#include <stdlib.h>
#include <stdbool.h>
#include <windows.h>
#define IDNO_LENGTH 6
#define CALC_KIND 4
#define CALC_NUM 10
bool checkNo(char idCS[]);//验证ID 
char getSignal();//获取运算符 
int getResult(int,int,char);//结果 
void takeTest();//列出题目
char str[100];
//main函数
int main(){
   
    while(1){
   
        printf("请输入用户ID号:");
        char idCS[IDNO_LENGTH];
        do{
   
            scanf("%s",&idCS);
            fflush(stdin);
        } while(checkNo(idCS)==false);
        printf("(1)开始测试\t\n(2)检查分数\n(3)退出\n");
        int choose;
        do{
   
            printf("请选择:");
            scanf("%d",&choose);
            fflush(stdin);
        } while(choose!=1 && choose!=2 && choose!=3);
        if(choose==1){
   
            FILE *fp=fopen("record.txt","a");
            fprintf(fp,"%s",idCS);
            fclose(fp);
            fflush(stdin);
            takeTest();
        }else if(choose==2){
      //选择2 
            FILE *fp;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值