C语言寒假大作战04

这个作业属于那个课程 2019级计算机科学与技术1班
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10280
我在这个课程的目标是 使用上次作业的菜单框架,并在其基础上增加各年级题目的答案函数
作业正文 C语言寒假大作战04
其他参考文献 百度

2.2.2 设计思路和遇到的问题

加上答案函数就得理清接下来的答案会发生什么样的结果,然后根据基础知识理清用if语句来分情况对算式进行解析。

2.2.3 程序结果截图

C语言寒假大作战04_第1张图片

2.2.4 程序代码

#include
#include 
#include 
void help();
void menu();
void error();
void one();
void two();
void three();
int main()
{
    int n;
    printf("========== 口算成器 ==========\n");
    printf("欢迎使用口算生成器:)\n");
    printf("\n");
    help();
    menu();
    while(1)
    {
        scanf("%d",&n);
        switch(n)
        {
            case 1:one();break;
            case 2:two();break;
            case 3:three();break;
            case 4:help();break;
            case 5:printf("程序结束,欢迎下次使用\n任意键结束......");break;
            default:error();break;
        }
    }
    return 0;
}
void help()
{
    printf("帮助信息\n您需要输入命令代号来进行操作, 且\n一年级题目为不超过十位的加减法;\n二年级题目为不超过百位的乘除法;\n三年级题目为不超过百位的加减乘除混合题目.\n");
    printf("\n");
}

void menu()
{
    printf("操作列表:\n1)一年级    \n2)二年级    \n3)三年级\n");
    printf("4)帮助     5)退出程序\n");
    printf("请输入操作>\n");
}
void error()
{
    printf("Error!!!\n");
    printf("错误操作指令, 请重新输入\n");
}
void one()
{
    int n,a,i,b,c,sum=0;
    char op;
    op = rand()%3+43;
    printf("现在是一年级题目:\n");
    printf("请输入生成个数>");
    scanf("%d",&n);
    printf("<执行操作:)\n\n");
    printf("/*----- 一年级 -----*/\n");
    for(i=1;i<=n;i++)
    {
        while(a!=1)
        {
            char op;
            op = rand()%3+43;
            b = rand()%10;
            c = rand()%10;
            if(op==44)
               continue;
            else
            if(op==43)
            sum = b + c;
            if(op==45)
            sum = b - c;
               printf("%2d %c %2d = %2d\n",b,op,c,sum);break;
        }   
    }
    
    
}
void two()
{
    printf("现在是二年级题目:\n");
    int a,b,n,i,c;
    double sum = 0;
    printf("请输入所需要的题目个数");
    scanf("%d",&n); 
    printf("<执行操作:)\n\n");
    printf("/*----- 二年级 -----*/\n");
    
    
    for(i=1;i<=n;i++)
    {
        while(a!=1)
        {
            char op;
            op = rand()%6+42;
            b = rand()%100;
            c = rand()%100;
            if(op>42&&op<47||op==47&&b==0)
                continue;
            else
            if(op==42)
            sum = b*c;
            if(op==47)
            sum = 1.0*b/c;
                printf("%2d %c %2d = %2g\n",b,op,c,sum);break;
        }
    }
}
void three()
{
    printf("现在是三年级题目:\n");
    printf("请输入生成个数>\n");
    int a,b,c,n,i,m;
    double sum = 0;
    scanf("%d",&n);
    printf("<执行操作:)\n");
    printf("/*----- 三年级 -----*/\n"); 
    
    
    for(i=1;i<=n;i++)
    {
        while(a!=1)
        {
            char op,d;
            op = rand()%6+42;
            d = rand()%6+42;
            b = rand()%100;
            c = rand()%100;
            m = rand()%100;
            if(op==44||op==46||d==44||d==46||op==47&&op==0||d==47&&op==0)
               continue;
            else
            if(op==42&&d==43)
            sum = m*b+c;
            if(op==42&&d==45)
            sum = m*b-c;
            if(op==42&&d==42)
            sum = m*b*c;
            if(op==42&&d==47)
            sum = m*b*1.0/c;
            if(op==43&&d==43)
            sum = m+b+c;
            if(op==43&&d==45)
            sum = m+b-c;
            if(op==43&&d==47)
            sum = m+b*1.0/c;
            if(op==45&&d==42)
            sum = m-b*c;
            if(op==45&&d==43)
            sum = m-b+c;
            if(op==45&&d==47)
            sum = m-b*1.0/c;
            if(op==47&&d==42)
            sum = m*1.0/b*c;
            if(op==47&&d==43)
            sum = m*1.0/b+c;
            if(op==47&&d==45)
            sum = m*1.0/b-c;
            if(op==47&&d==47)
            sum = m*1.0/b/c;
               printf("%2d %c %2d %c %2d = %2g\n",m,op,b,d,c,sum);break;
        }
    }
}

2.2.5 Gitee上传截图与链接

C语言寒假大作战04_第2张图片

码云链接:https://gitee.com/qq827839114/dashboard

你可能感兴趣的:(C语言寒假大作战04)