zoukankan      html  css  js  c++  java
  • 实验1

    #include <stdio.h>
    #include <ctype.h>
    #include <time.h>
    #include <stdlib.h>
    #include <windows.h>
    #define IDNO_LENGTH 6
    #define CALC_KIND 4

    char getSignal();
    int getResult(int,int,char);
    void takeTest();
    void falsePrint(int);
    void correctPrint(int);

    //main函数
    void main()
    {
    while(1)
    {
    takeTest();
    }

    }

    //获取随机运算符
    char getSignal()
    {
    char signal[CALC_KIND]={'+','-','*','/'};
    srand((unsigned)time(NULL));
    return signal[rand()%4];
    }

    //获取随机数
    int random(double start, double end)
    {
    return (int)(start+(end-start)*rand()/(RAND_MAX+ 1.0));
    }

    //运算
    int getResult(int num1,int num2,char signal)
    {
    int res;
    switch(signal)
    {
    case '+':
    res=num1+num2;break;
    case '-':
    res=num1-num2;break;
    case '*':
    res=num1*num2;break;
    case '/':
    res=num1/num2;break;
    default:
    res=0;
    printf("运算符不符合规则\n");
    }
    return res;
    }

    //列出题目
    void takeTest()
    {
    int giveRes;
    int num1;
    int num2;
    char signal;
    int printFlag;

    srand((unsigned)time(NULL));
    signal=getSignal();
    num1=random(0,100);
    num2=random(1,100);

    if(signal=='-')
    {
    if(num1<num2)
    {
    int temp;
    temp=num1;
    num1=num2;
    num2=temp;
    }
    }

    if(signal=='/')
    {
    if(num2==0)
    {
    int temp;
    temp=num1;
    num1=num2;
    num2=temp;
    }
    }

    printf("%d%c%d=",num1,signal,num2);
    scanf("%d",&giveRes);
    fflush(stdin);

    if(getResult(num1,num2,signal)==giveRes)
    {
    printFlag=random(1,5);
    correctPrint(printFlag);
    }
    else
    {
    printFlag=random(1,4);
    falsePrint(printFlag);
    printf("正确答案:%d\n",getResult(num1,num2,signal));
    }
    }

    //回答正确打印信息
    void correctPrint(int num)
    {
    switch(num)
    {
    case 1:
    printf("You're right!\n");break;
    case 2:
    printf("It's OK!\n");break;
    case 3:
    printf("Correct!\n");break;
    case 4:
    printf("Perfect!\n");break;
    case 5:
    printf("Good!\n");break;
    default:
    printf("Powerful!\n");break;
    }
    }

    //回答错误打印信息
    void falsePrint(int num)
    {
    switch(num)
    {
    case 1:
    printf("You're lost!");break;
    case 2:
    printf("Failure!");break;
    case 3:
    printf("Come on!");break;
    case 4:
    printf("It's wrong!");break;
    default:
    printf("Incorrect!");break;
    }
    }

  • 相关阅读:
    i++和++i
    MySQL 5.6 for Windows 解压缩版配置安装-----------有点难看懂
    mysqld install报错:Install/Remove of the Service DeniedMy/Authentication plugin 'caching_sha
    mysql中,执行mysqld –install命令 、net start mysql命令出错的解决办法
    Mysql 服务无法启动 服务没有报告任何错误------------------mysql安装步骤
    mysql数据库安装步骤
    对io进行分流
    JDBC、mybatis、hibernate连接数据库
    当前电商行业的介绍
    MySQL常见常用的SQL优化
  • 原文地址:https://www.cnblogs.com/diaoyi/p/4368148.html
Copyright © 2011-2022 走看看