软件工程课后作业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");
 }言:

 

运行结果:

 

posted on 2018-10-07 23:06  大浪淘沙。  阅读(116)  评论(0编辑  收藏  举报