• 小学生四则运算


    小学生练习题四则运算包括真分数的四则运算和整数的四则运算,我写了八个函数,分别是整数加法、整数减法、整数乘法、整数除法、真分数加法,真分数减法,真分数乘法和真分数除法,利用随机函数rand()产生随机数,可以随意练习多少道题目,写完这个程序用了2个小时,主要用在调试上了。

    #include<stdio.h>
    #include<stdlib.h>
    void add(int a,int b)     //整数加法
    {
     a=rand()%100;
     b=rand()%100;
     printf("%d+%d=",a,b);
     return ;

    }
    void sub(int a,int b)     //整数减法
    {
     int c;
     a=rand()%100;
     b=rand()%100;
     if(a<b)
     {
      c=a;
      a=b;
      b=c;
     }
       printf("%d-%d=",a,b);
       return ;
    }
    void mul(int a,int b)           //整数乘法
    {
     a=rand()%100;
     b=rand()%100;
     printf("%d*%d=",a,b);
     return ;
    }
    void mq(int a,int b)            //整数除法
    {
     a=rand()%100;
     b=rand()%100;
     while(b==0)
      b=rand()%100;
     printf("%d/%d=",a,b);
     return ;
    }
    void add1(int a,int b,int c,int d)          //真分数加法
    {  
     int t;
     a=rand()%100;
     b=rand()%100;
     c=rand()%100;
     d=rand()%100;
     while(b==0)
     {
      b=rand()%100;
     }
     while(d==0)
     {
      d=rand()%100;
     }
        if(a>b)
     {
      t=a;
      a=b;
      b=t;
     } 
     if(c>d)
     {
      t=c;
      c=d;
      d=t;
     }
        printf("%d/%d+%d/%d=",a,b,c,d);
     return ;
    }
    void sub1(int a,int b,int c,int d)           //真分数减法
    {  
     int t;
     a=rand()%100;
     b=rand()%100;
     c=rand()%100;
     d=rand()%100;
     while(b==0)
     {
      b=rand()%100;
     }
     while(d==0)
     {
      d=rand()%100;
     }
        if(a>b)
     {
      t=a;
      a=b;
      b=t;
     } 
     if(c>d)
     {
      t=c;
      c=d;
      d=t;
     }
     if(a/b>c/d)
        printf("%d/%d-%d/%d=",a,b,c,d);
     else
        printf("%d/%d-%d/%d=",c,d,a,b);
     return ;
    }
    void mul1(int a,int b,int c,int d)                    //真分数乘法
    {  
     int t;
     a=rand()%100;
     b=rand()%100;
     c=rand()%100;
     d=rand()%100;
     while(b==0)
     {
      b=rand()%100;
     }
     while(d==0)
     {
      d=rand()%100;
     }
        if(a>b)
     {
      t=a;
      a=b;
      b=t;
     } 
     if(c>d)
     {
      t=c;
      c=d;
      d=t;
     }
        printf("%d/%d*%d/%d=",a,b,c,d);
     return ;
    }
    void mq1(int a,int b,int c,int d)               //真分数除法
    {  
     int t;
     a=rand()%100;
     b=rand()%100;
     c=rand()%100;
     d=rand()%100;
     while(b==0)
     {
      b=rand()%100;
     }
     while(d==0)
     {
      d=rand()%100;
     }
        if(a>b)
     {
      t=a;
      a=b;
      b=t;
     } 
     if(c>d)
     {
      t=c;
      c=d;
      d=t;
     }
     printf("(%d/%d)/(%d/%d)=",a,b,c,d);
     return ;
    }
    void main()
    {
       int n,a,b,c,d;
       printf("欢迎进入小学生算数练习系统! ");
       while(1)
       {
       scanf("%d",&n);
         switch(n)
         {
          case 1: add(a,b);break;
          case 2: sub(a,b);break;
          case 3: mul(a,b);break;
          case 4: mq(a,b);break;
          case 5: add1(a,b,c,d);break;
          case 6: sub1(a,b,c,d);break;
          case 7: mul1(a,b,c,d);break;
          case 8: mq1(a,b,c,d);break;
          default:printf("input error!");break;
         }
       }
    }

     这个代码虽然实现了基本功能但还有很多缺点,比如不够优化,功能不够完善,希望在以后学习中不断提高,写出更加高效完善的代码。

  • 相关阅读:
    java图形化Swing教程(一)
    NYOJ467 中缀式变后缀式 【栈】
    火云开发课堂
    Egret项目Typescript的编译报错
    Java学习笔记(八):集合类
    Java学习笔记(七):内部类、静态类和泛型
    认识JavaScript的原型
    Java学习笔记(六):面向对象、接口和抽象类
    Java学习笔记(五):异常处理
    Java学习笔记(四):流程控制
  • 原文地址:https://www.cnblogs.com/wangzongjie/p/5267990.html
Copyright © 2020-2023  润新知