第十九周— 小学生数学考试系统

/*
烟台大学计算机学院 2016
作者:张威
完成日期:2017年1月4日
版本号:V1.1
*/
#include <stdio.h>
#include <stdlib.h>
#include<time.h>
int main()
{
    int a,b,m,count=0,i;  //a,b分别代表随机产生一百以内的两个数,m=0 1 2 3代表加减乘除四种运算过程
                          //count用来计算题目数量控制在10道以内
    int n,d;              //n表示学生输入的答案,d为交换变量
    float corret;         //corret为做题的正确率
    do{
    printf("欢迎使用小学生数学运算考试系统!\n");
    srand(time(0));
    for(i=0; i<10; i++)
    {
        m=rand()%4+1;
        do
        {
            a=rand()%100+1;
            b=rand()%100+1;
            if(a<b&&(m==2||m==4)) //当运算为减或乘时,必须满足被减数大于减数,被除数大于除数
            {
                d=a;
                a=b;
                b=d;
            }
        if(m==4)
            a=(a/b)*b;               //保证a能整除b
        }while((a+b)>=100||a*b>=100);//对于小学生来说 这些运算必须在100以内
        switch(m)                    //以下是各种运算
        {
        case 1:
            printf("%d+%d\n",a,b);
            d=a+b;
            break;
        case 2:
            printf("%d-%d\n",a,b);
            d=a-b;
            break;
        case 3:
            printf("%d*%d\n",a,b);
            d=a*b;
            break;
        case 4:
            printf("%d/%d\n",a,b);
            d=a/b;
            break;
        }
        printf("请输入你做的答案:\n");
        scanf("%d",&n);               //输入运算后的结果
        if(n==d)                     //如果结果正确,输出Right,做对的题目数加1
        {
            printf("Right\n");
            count++;
        }
        else
            printf("Wrong\n");         //如果结果错误,输出Wrong
    }
    printf("你做对的题目有%d道",count);
    corret=(count/10.0)*100;
    printf("正确率为:%.0f%%\n",corret);
    printf("是否继续,继续选1,否则选2\n");
    int x;
    scanf("%d",&x);
    if(x==1)
        continue;
    else if(x==2)
        break;
  } while(1);
    return 0;
}
运行结果:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值