Sistema de preguntas aleatorias

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int main()
{
    
    
    printf("***************************************************************************\n");
    printf("**                             程序功能                                  **\n");
    printf("**                                                                       **\n");
    printf("**       由电脑随机给出1-20内“+”,“-”,“*”,“/”的简单计算题      **\n");
    printf("**                   (共20道题,每题5分,总分100分)                    **\n");
    printf("***************************************************************************\n");

    int t,score=0,m,i,answer,flag=0,bz;
    printf("\n\n接下来有20道题\n");
    for(i=1; i<20; i++)
    {
    
    
        m=show(i);//出题,用m接收正确答案
        printf("请输入你的答案:\n");
        scanf("%d",&answer);//输入答案
        t=text(m,answer);//用t接收测试结果
        if(t==1)
        {
    
    
            score+=5;
            printf("***回答正确,当前得分:%d\n\n接下来还有%d道题目\n",score,20-i);
        }
        else
        {
    
    
            printf("***回答错误,当前得分:%d\n\n接下来还有%d道题目\n",score,20-i);
        }
    }
    m=show(i);//出题,用m接收正确答案
    printf("请输入你的答案:\n");
    scanf("%d",&answer);//输入答案
    t=text(m,answer);//用t接收测试结果
    if(t==1)
    {
    
    
        score+=5;
        printf("***回答正确,当前得分: %d\n\n",score,20-i);

    }
    else
    {
    
    
        printf("***回答错误,当前得分: %d\n\n",score,20-i);
    }
    //输出成绩
    printf("****************************************\n");
    printf("**                                    **\n");
    printf("**   你已经完成测试,总成绩为: %-5d **\n",score);
    printf("**                                    **\n");
    printf("****************************************\n\n");
    //输出评语
    printf("       ,___          .-;'\n");
    printf("       `\"-.`\_...._/`.`\n");
    printf("    ,      \        /\n");
    printf(" .-' ',    / ()   ()\\\n");
    printf("`'._   \  /()    .  (|\\\n");
    printf("    > .' ;,     -'-  /\\\n");
    if(score>=60)
        printf("   / <   |;,     __.;           你好棒呀!继续努力哦!\n");
    else
        printf("   / <   |;,     __.;           不要灰心,要加油哦!\n");
    printf("   '-.'-.|  , \    , \\\n");
    printf("      `>.|;, \_)    \_)\n");
    printf("       `-;     ,    /\n");
    printf("          \    /   <\n");
    printf("           '. <`'-,_)\n");
    printf("            '._)\n");

    return 0;
}

int show(int i)//出题
{
    
    
    int num1,num2,x,s;
    char c;
    srand((unsigned)time(NULL));//以时间数种子来生成随机数
    printf("问题%d:  ",i);
    num1=rand()%20+1;//生成随机数
    num2=rand()%20+1;//生成随机数
    x=rand()%4;//结合下面switch语句,实现运算类型的随机
    switch(x)
    {
    
    
    case 0:
        c='+';
        s=num1+num2;
        break;
    case 1:
        c='-';
        s=num1-num2;
        break;
    case 2:
        c='*';
        s=num1*num2;
        break;
    default:
        c='/';
        s=num1/num2;
        break;
    }
    printf("%d%c%d=\n",num1,c,num2);//输出问题
    return s;
}

int text(int a,int b)//判断题目是否正确
{
    
    
    if(a==b)
        return 1;
    else
        return 0;
}

Supongo que te gusta

Origin blog.csdn.net/weixin_51800059/article/details/110951539
Recomendado
Clasificación