zoukankan      html  css  js  c++  java
  • 自动生成四则运算题目

    • 主要功能:随机生成四则运算题目
    • 设计思想:先通过一个简单的四则运算,再不断完善
    • 源代码
    #include"stdio.h"
    main(){
        int  a,b,c,d;
        printf("自动生成四则运算:
    ");
        printf("%d+%d= 
    ",a,b);    
        printf("%d-%d= 
    ",a,b);
        printf("%d*%d= 
    ",a,b);
        printf("%d/%d= 
    ",a,b);
    } 

    这是刚开始编写的四则运算,是最简单的四则运算,同时也有着很多缺点,如:数值太大,随机生成的数字是伪随机数,无法生成分数的四则运算,加减乘除无法随机生成。
    为解决随机数值太大的问题我运用了int rand(void)产生随机数的函数并且加上了限制rand()%100使其只能生成0~99之间的整数。而为了解决伪随机数我运用了srand( (unsigned)time(0 ))这以段代码。我将加减乘除四个符号同样以rand()函数来随机生成。

    #include"stdio.h"
    #include"stdlib.h"
    #include"time.h"
    main(){
        char i;
        int a,b,c,d,n,m,j,k,e;
        printf("**********自动生成四则运算***********
    ");
        printf("1.开始
    ");
        printf("2.退出
    ");
        printf("请选择:
    ");
        scanf("%d",&n);
        if(n==1){
        srand((unsigned)time(NULL));
            printf("请输入生成的题数:");
            scanf("%d",&m);
            for(j=0;j<m;j++){
                e=rand()%4;
                if(e==0){i='+';}
                if(e==1){i='-';}
                if(e==2){i='*';}
                if(e==3){i='/';}
                a=rand()%100;
                b=rand()%100;
                c=rand()%100;
                d=rand()%100;
                k=rand()%2;
                switch(k){
                    case 0:printf("%d%c%d=
    ",a,i,b);break;
                    case 1:{if(a<=b&&c<=d)printf("%d/%d%c%d/%d=
    ",a,b,i,c,d);
                            else if(a>b&&c>d) printf("%d/%d%c%d/%d=
    ",b,a,i,d,c);
                            else if(a<=b&&c>d) printf("%d/%d%c%d/%d=
    ",a,b,i,d,c);
                            else if(a>b&&c<=d) printf("%d/%d%c%d/%d=
    ",b,a,i,c,d);
                            }break;
                    }
                    
                }
            
            }
         if(n==2){
            exit(0);
            return 0;
        }
    }
    • 程序运行截图:

    • 总结:  

    经过这次编写四则运算,在我不断修改的过程中,我重新开始掌握C语言,并从中也学到了很多,自己明显感觉到自己在一次一次的修改中不断进步。

  • 相关阅读:
    C#检查数组是否重复——HashSet
    C#动态生成控件,并添加事件处理,获取控件值并保存
    .net接口交互
    SQL Server 表建Trigger
    SQL Server 表建Trigger
    SQL语句修改not in 变为not exists
    奋战杭电ACM(DAY11)1017
    奋战杭电ACM(DAY11)1016
    奋战杭电ACM(DAY10)1015
    奋战杭电ACM(DAY9)1014
  • 原文地址:https://www.cnblogs.com/bgdwxr/p/5281359.html
Copyright © 2011-2022 走看看