小学四则运算

| 博客班级 | 计算机183 |
| ---- | ---- | ---- |
| 作业要求 | 四则运算题目生成程序 |
| 作业目标 | 练习markdown 练习规范编程 |
| 学号 | 3180701342 |

写一个能自动生成小学四则运算题目的程序,然后在此基础上扩展

1)除了整数以外,还要支持真分数的四则运算,例如:1/6+1/8=7/24

2)程序要求能处理用户的输入,判断对错,累积分数

3)程序支持可以由用户自行选择加、减、乘、除运算

4)使用-n参数控制生成题目的个数,例如Myapp.exe -n 10,将生成10个题目

源码

  #include<stdio.h>
  #include<stdlib.h>
  #include <time.h>
  #define N 30
  main()
  {
   int a,b,k,i,n;
   float c,d;
   srand(time(NULL));
   do{
   printf("\n请输入数字类型(1.整数 2.小数) -1为退出程序: ");
   scanf("%d",&n);
  
   switch(n)
   {
   case 1:
   {
  
   for(i=0;i<N;i++)
   {
   a=rand()%100+1;
   b=rand()%100+1;
   k=rand()%4+1;
   printf("%d",a);
   switch(k)
   {
   case 1:printf("+");break;
   case 2:printf("-");break;
   case 3:printf("*");break;
   case 4:printf("/");break;
   }
   printf("%d=\t\t",b);
   }
   break;
   }
   break;
   case 2:
   {
  for(i=0;i<N;i++)
   {
   c=rand()*0.001+1;
   d=rand()*0.001+1;
   k=rand()%4+1;
   printf("%0.2f",c);
   switch(k)
   {
   case 1:printf("+");break;
   case 2:printf("-");break;
   case 3:printf("*");break;
   case 4:printf("/");break;
   }
   printf("%0.2f=\t",d);
   }
   break;
  }
   break;
   }
   }while(n!=-1);
  }
  '''

  int count_s();
  void over();

  void main()
  {
      int i;
      printf("\n\t\t\t || 欢迎进入小学四则运算系统 ||\n");
            printf("\n\t\t\t1  开始做题\n");
      printf("\n\t\t\t2  退出\n");
      printf("\n\t请输入您的选择: \n");
      scanf("%d",&i);
      if(i==1){
          count_s();
            }
      else if(i==2)
      {
          over();
      }else{
          printf("\n\t输入错误,请重新输入:d%",i);
          return;
      }
  }

  void over()
    {
      printf("\n\t\t欢迎再次使用,谢谢!");
  }

  int count_s()
  {
      int i=0;
       int n=0;
       int x=0;
       int t;
       char a;
       int b, c;
       float result;
       printf("/******请输入要出的题目数量:\n");
       scanf("%d",&n);
       srand((unsigned) time(NULL)); 
       while(x<n)
       {
              a = rand() % 4;
               b = rand() % 100;
               c = rand() % 100;
           switch(t)
           {
           case 0:
               printf("%d + %d = ?\n", b, c);
               break;
           case 1:
               printf("%d - %d = ?\n", b, c);
               break;
           case 2:
               printf("%d * %d = ?\n", b, c);
               break;
           case 3:
               printf("%d / %d = ?\n", b, c);
               break;
           }
   
           i++;
           while(i>=n)
           {
               printf("\n\t一共 %d 题\n",i); 
               printf("\n\t\t继续?[Y/N]\n");
               fflush(stdin);
               scanf("%c",&a);
               if(a=='Y'||a=='y')
               {
                   printf("/*****请输入要出的题目数量\n");
                   scanf("%d",&n);
                   i=0;
                   break;
                }
               printf("欢迎再次使用使用!\n");
               fflush(stdin);
               getchar();
               return 0;
           }
       }
  }

小结

  很多知识点并不熟练,不过用Markdown写博客很有意思

| 这个作业属于哪个课程 |<班级的链接>| 计划完成需要的时间(min)| 实际完成需要的时间(min) |
| -----------------------|----------|-----------|---- | ------ |
| Planning| 计划 |5 |5 | |
| Estimate |估计这个任务需要多少时间,并规划大致工作步骤| 10 |10 | |
| Development |开发 |200 |180 | |
| Analysis |需求分析(包括学习新技术)| 20| 40 | |
| Design Spec |生成设计文档 |15| 10 | |
| Design Review |设计复审| 10 |15 | |
| Coding Standard| 代码规范 5| 5 | |
| Design |具体设计| 20| 40 | |
| Coding |具体编码| 200| 180 | |
| Code Review |代码复审| 20| 15 | |
| Test| 测试(自我测试,修改代码,提交修改)| 60 |60 | |
| Reporting |报告| 5| 5 | |
| Test Report |测试报告| 5 |5 | |
| Size Measurement |计算工作量| 20 |25 | |
| Postmortem & Process Improvement Plan| 事后总结,并提出过程改进计划| 40| 90 | |

posted @ 2020-11-08 23:36  潘韵帆  阅读(147)  评论(0)    收藏  举报