二年级四则运算的扩展,可以指定题目数量,并可支持真分数的运算

新加的要求:

1.可指定题目数量;

2.支持真分数运算。

代码编写:

#include<stdio.h>
  #include<Windows.h>
  #include<time.h>
  void main()
  {
      int a, b, c, d,i,m,n;
      float p, q;
      srand(unsigned( time(NULL)));
      for (i = 0; i < 30; i++)
   
   {
         a = rand() % 100;
         b = rand() % 100;
         c = rand() % 5;
         switch (c)
         {
        case 0: printf("%d + %d =\n", a, b);
             break;
         case 1:if (a < b)
         {
                    d = a;
                    a = b;
                    b = d;
         }
                printf("%d - %d =\n", a, b);
                break;
         case 2:printf("%d * %d =\n", a, b);
             break;
         case 3:
            while (b == 0)
             {
                 b = rand() % 100;
             }
             printf("%d / %d =\n", a, b);
             break;
         case 4:
             a = rand() % 100;
             b = rand() % 100;
             m = rand() % 100;
             n = rand() % 100;
             c = rand() %4 ;
             while (b == 0)
             {
                 b = rand() % 100;
             }
             while (n == 0)
             {
                 n = rand() % 100;
             }
             if (a > b)
             {
                 d = a;
                 a = b;
                 b = d;
             }
             if (m > n)
             {
                 d = m;
                 m = n;
                 n = d;
            }
             switch (c)
             {
             case 0:printf("%d/%d + %d/%d =\n", a, b, m, n);
                 break;
             case 1:
                 p = (float)a / (float)b;
                 q = (float)m / (float)n;
                 if (p < q)
                 {
                     d = a;
                     a = m;
                     m = d;
                     d = b;
                     b = n;
                     n = d;
                 }
                printf("%d/%d - %d/%d =\n", a,b,m,n);
                 break;
             case 2:printf("%d/%d * %d/%d =\n", a, b, m, n);
                 break;
             case 3:
                 a = rand() % 100;
                 b = rand() % 100;
                 m = rand() % 100;
                 n = rand() % 100;
                 c = rand() % 4;
                 while (m == 0)
                 {
                     m = rand() % 100;
                }
                 printf("%d/%d / %d/%d =\n", a, b, m, n);
                 break;
             }
         }
     }
     system("pause");
 }

运行结果截图:

 

转载于:https://www.cnblogs.com/princehai/p/9752103.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值