分数的四则运算

#include<stdio.h>
  #include<Windows.h>
  #include<time.h>
  void main()
  {
      int a, b, c, d,i,e,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;
             e = rand() % 100;
             n = rand() % 100;
             c = rand() %4 ;
             while (b == 0)
             {
                 b = rand() % 100;
             }
             while (n == 0)
             {
                 n = rand() % 100;
             }
             switch (c)
             {
             case 0:printf("%d/%d + %d/%d =\n", a, b, e, n);
                 break;
             case 1:
                 p = (float)a / (float)b;
                 q = (float)e / (float)n;
                 if (p < q)
                 {
                    d = a;
                     a = e;
                     e = d;
                     d = b;
                     b = n;
                     n = d;
                 }
                 printf("%d/%d - %d/%d =\n", a,b,e,n);
                 break;
             case 2:printf("%d/%d * %d/%d =\n", a, b, e, n);
                 break;
             case 3:
                 a = rand() % 100;
                 b = rand() % 100;
                 e = rand() % 100;
                 n = rand() % 100;
                 c = rand() % 4;
                 while (e == 0)
                 {
                     e = rand() % 100;
                }
                 printf("%d/%d / %d/%d =\n", a, b, e, n);
                 break;
             }
         }
     }
     system("pause");
 }
程序运行结果:

二柱子的老师想扩大一下范围,添加一下真分数的四则运算。

题目要求:能自动生成30道包括分数的100以内四则运算题目。

         能支持整数和真分数。

题目分析:减法运算不能有负数

        除法运算时分母不能为0.

        运用随机生成函数。

总结:

提高了打代码的速度及使用C语言编程的熟练度,熟练的运用随机生成函数。期待下次学习。

 

 

转载于:https://www.cnblogs.com/1079928341qqcom/p/9769448.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值