• C语言寒假大作战04


    2.2.1作业头

    这个作业属于哪个课程 19级计算机1班
    这个作业要求在哪里 C语言寒假大作战04
    这个作业的目标 用程序计算口算题
    作业正文 C语言寒假大作战04
    其他参考文献 百度百科、C语言程序设计

    2.2.2 设计思路和遇到的问题

    设计思路:####只需在原来的基础上进行计算就可。

    遇到的问题:####int和double类型没有分清,导致结果的小数位很多。

    2.2.3 程序结果截图##



    2.2.4 程序代码

    include<stdio.h>

    int menu();
    int error();
    int help();
    int grade1(int a);
    int grade2(int a);
    int grade3(int a);
    int main ()
    {
    int n,m=0;
    printf("========== 口算生成器 ");
    printf("欢迎使用口算生成器 : ");
    printf(" ");
    help();
    printf(" ");
    printf(" ");
    menu();
    while(m!=1)
    {
    scanf("%d",&n);
    switch(n)
    {
    case 1:grade1(n); break;
    case 2:grade2(n); break;
    case 3:grade3(n); break;
    case 4:help(); break;
    case 5:m=1;printf("程序结束, 欢迎下次使用 任意键结束……"); break;
    default:error(); break;
    }
    }
    return 0;
    }
    int menu()
    {
    printf("操作列表: ");
    printf("1)一年级 2)二年级 3)三年级 ");
    printf("4)帮助 5)退出程序 ");
    printf("请输入操作> ");
    }
    int error()
    {
    printf("Error!!! ");
    printf("错误操作指令, 请重新输入 ");
    }
    int help()
    {
    printf("帮助信息 ");
    printf("您需要输入命令代号来进行操作, 且 ");
    printf("一年级题目为不超过十位的加减法; ");
    printf("二年级题目为不超过百位的乘除法; ");
    printf("三年级题目为不超过百位的加减乘除混合题目. ");
    }
    int grade1(int a)
    {
    int n,m,b,i,j;char op;
    printf("< 执行操作 : ");
    printf("现在是一年级的题目 ");
    printf("请输入生成个数>");
    scanf("%d",&a);
    for(i=1;i<=a;i++)
    {
    b=rand() % 2;
    if(b
    0)
    op='+';
    if(b
    1)
    op='-';
    m=rand()%10;
    n=rand()%10;
    if(op
    '-')
    j=m-n;
    if(op
    '+')
    j=m+n;
    printf("%d %c %d = %d ",m,op,n,j);
    }
    printf("执行完了 ");
    }
    int grade2(int a)
    {
    printf("< 执行操作 : ");
    printf("现在是二年级的题目 ");
    printf("请输入生成个数>");
    int n,m,b,i;char op;
    double j;
    scanf("%d",&a);
    for(i=1;i<=a;i++)
    {
    b=rand()%2;
    if(b
    0)
    op='';
    if(b1)
    op='/';
    m=rand()%10;
    n=rand()%10;
    if(n
    0&&op'/')
    n=rand()%9+1;
    if(op
    '
    ')
    j=1.0mn;
    if(op'/')
    j=1.0*m/n;
    printf("%d %c %d = %g ",m,op,n,j);
    }
    printf("执行完了 ");
    }
    int grade3(int a)
    {
    printf("< 执行操作 : ");
    printf("现在是三年级的题目 ");
    printf("请输入生成个数>");
    int n,m,b1,b2,c,i;char op1,op2;
    double sum;
    scanf("%d",&a);
    for(i=1;i<=a;i++)
    {
    b1=rand()%4;
    if(b1
    0)
    op1='';
    if(b11)
    op1='/';
    if(b1
    2)
    op1='+';
    if(b13)
    op1='-';
    m=rand()%100;
    n=rand()%100;
    if(op1
    '/'&&n0)
    n=rand()%99+1;
    b2=rand()%4;
    if(b2
    0)
    op2='
    ';
    if(b21)
    op2='/';
    if(b2
    2)
    op2='+';
    if(b23)
    op2='-';
    c=rand()%100;
    if(op2
    '/'&&c0)
    c=rand()%99+1;
    if(op1
    '+'&&op2'+')
    sum=m+n+c;
    if(op1
    '+'&&op2'-')
    sum=m+n-c;
    if(op1
    '+'&&op2'/')
    sum=m+1.0*n/c;
    if(op1
    '+'&&op2'')
    sum=m+n
    c;
    if(op1
    '-'&&op2'+')
    sum=m-n+c;
    if(op1
    '-'&&op2'-')
    sum=m-n-c;
    if(op1
    '-'&&op2'')
    sum=m-n
    c;
    if(op1
    '-'&&op2'/')
    sum=m-1.0*n/c;
    if(op1
    ''&&op2=='-')
    sum=1.0
    mn-c;
    if(op1=='
    '&&op2'+')
    sum=1.0mn+c;
    if(op1
    ''&&op2=='')
    sum=mnc;
    if(op1'*'&&op2'/')
    sum=1.0mn/c;
    if(op1'/'&&op2'-')
    sum=1.0m/n-c;
    if(op1'/'&&op2'+')
    sum=1.0
    m/n+c;
    if(op1'/'&&op2'')
    sum=1.0
    m/nc;
    if(op1'/'&&op2'/')
    sum=1.0
    m/n/c;
    printf("%d %c %d %c %d = %g ",m,op1,n,op2,c,sum);
    }
    printf("执行完了 ");
    }

    2.2.5 Gitee上传截图与链接



    我的仓库

  • 相关阅读:
    动态规划:POJ2576-Tug of War(二维费用的背包问题)
    动态规划:HDU3496-Watch The Movie(二维费用的背包问题)
    动态规划:HDU1712-ACboy needs your help(分组背包问题)
    水题:HDU1303-Doubles
    动态规划:HDU2844-Coins(多重背包的二进制优化)
    动态规划:HDU1059-Dividing(多重背包问题的二进制优化)
    动态规划:HDU1224-Free DIY Tour
    动态规划:HDU1864-最大报销额(处理带小数的dp问题)
    红黑树
    二叉树
  • 原文地址:https://www.cnblogs.com/zengzi123/p/12323256.html
Copyright © 2020-2023  润新知