20194729 自动生成四则运算题第一版报告

一、需求分析

  为节省父母出题的时间,加强孩子的计算能力,需要设计出可以随机生成算式的程序


二、功能设计

基本功能

  (1)自动生成10道100以内的2个操作数的四则运算算式(+ - *  /),要求运算结果也在100以内

  (2)剔除重复算式。  2 + 3 =    和  2 + 3 =     是重复算式      2 + 3 =   和   3 + 2 =  不属于重复算式

  (3)题目数量可定制

  (4)相关参数可控制

            是否包含乘法和除法

            操作数数值范围可控(如操作数 在100以内   还是1000以内)

            操作数是否含负数    

    (5)生成的运算题存储到外部文件result.txt中

扩展功能

   可以同时生成答案。


 三、设计实现

   我选择用c语言作为编码语言,shengcheng函数用来随机生成数,随机数生成需要用到rand()函数,需要引进头文件#include <stdlib.h>、#include <time.h>。用一个函数来确定题目的个数,这个number函数确定题目的个数,数目由用户输入确定。用descide函数确定符号并算出运算结果。用exclude函数提出重复算式。用printf11函数将生成的运算题存储到外部文件result.txt中。


 四、测试运行

 


五、代码显示

1.随机数生成函数

1 int shengcheng()
2  {
3       int a[100];//用于保存随机数
4       for (int i=0;i<10;i++)
5     {
6           a[i] = rand()%100+1;//产生1~100的随机数
7       }
8  }

2.判断符号

 1 int deside()
 2 {
 3         int j=rand()%10+1;
 4         int a,b,result;
 5         float c,d,result1;
 6         switch(j)//选择符号
 7         {
 8         case 1:
 9             result =a+b;
10             printf("%d+%d=%d",a,b,result);
11             break;
12         case 2:
13             result =a-b;
14             printf("%d-%d=%d",a,b,result);
15             break;
16         case 3:
17             c=a;
18             d=b;
19             result1=c/d;
20             printf("%d/%d=%.1f",a,b,result1);
21             break;
22         default:
23             result=a*b;
24             printf("%d*%d=%d",a,b,result);
25             break;
26         }
27 }                        

3.导出

1 FILE*fp;
2 fp=fopen("result.txt","w+");//创建文件;
3 fprintf(fp,"%5d %c %d =\n",a,c,b);

 六、总结

   将需要实现的功能分成好几个模块,每一个模块实现相应功能,在主函数中调用相应功能。


 七、PSP

PSP 任务内容 计划共完成需要的时间(min) 实际完成需要的时间(min)
Planning 计划  10  8
·       Estimate ·  估计这个任务需要多少时间,并规划大致工作步骤  10  8
Development 开发  65  67
··     Analysts 需求分析(包括学习新技术)  10  10
·       Design Spec ·  生成设计文档  6  6
·       Design Review ·  设计复审 (和同事审核设计文档)  2  2
·       Coding Standard ·  代码规范 (为目前的开发制定合适的规范)  2  2
·       Design ·  具体设计  5  6
·       Coding ·  具体编码  35  36
·       Code Review ·  代码复审  3  3
·       Test ·  测试(自我测试,修改代码,提交修改)  2  2
Reporting 报告  10  11
··       Test Report · ·  测试报告  5  6
·       Size Measurement ·   计算工作量  2  2
·       Postmortem & Process Improvement Plan ·   事后总结 ,并提出过程改进计划  3  3

猜你喜欢

转载自www.cnblogs.com/www37/p/11519331.html