软件工程第二次作业

需求分析

使用C语言完成一个自动生成四则运算试题的程序。 自动生成10道100以内的2个操作数的四则运算算式(+ - *  /),要求运算结果也在100以内,并保存计算结果,并能控制其中的一些参数,显示在txt文件中。

 

功能设计

 

基本功能

 

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

 

扩展功能

 

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

 

(2)题目数量可定制

 

(3)以下相关参数可控制

 

          是否包含乘法和除法

 

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

 

          操作数是否含负数    

 

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

 

三、设计实现

 

主函数控制并循环生成随机数运算   具体参数由以下变量控制

 

a1:第一个操作数     

 

a2:第二个操作数    

 

math:随机生成数控制“+”、“-”、“*”、“/“符号    

 

s:题目数量      

 

max:控制操作数范围  

 

 sign:控制是否含负数

 

建立fun函数剔除重复算式

四.测试运行

 

 

 

五.代码片段

 

1.剔除重复算式

 

int fun(int a,int b,int c)

 

{int z=0;

 

int k=0;

 

static int p[100][3];

 

for(z=0;z<=k;z++)

 

{if(p[z][0]==a&&p[z][1]==b&&p[z][2]==c)

 

return 0;

}

 

 

p[z][o]=a;

p[z][1]=b;

p[z][2]=c;

k++;

return 1;

}

2.控制符号正负

 

 3.将输出数据导出到文本中

 

 六.总结

先把核心算法写出来,在逐步增加新的模块,使程序得到改善。

PSP2.1

任务内容

计划共完成需要的时间(min)

实际完成需要的时间(min)

Planning

计划

120

200

·       Estimate

·  估计这个任务需要多少时间,并规划大致工作步骤

60

80

Development

开发

160

180

··       Analysis

  需求分析 (包括学习新技术)

20

18

·       Design Spec

·  生成设计文档

15

14

·       Design Review

·  设计复审 (和同事审核设计文档)

10

12

·       Coding Standard

  代码规范 (为目前的开发制定合适的规范)

5

20

·       Design

  具体设计

10

12

·       Coding

  具体编码

50

82

·       Code Review

·  代码复审

5

9

·       Test

·  测试(自我测试,修改代码,提交修改)

13

20

Reporting

报告

9

6

··       Test Report

·  测试报告

3

17

·       Size Measurement

  计算工作量

20

25

·       Postmortem & Process Improvement Plan

·  事后总结 ,并提出过程改进计划

10

15

 

 

 

posted @ 2019-09-15 20:37  张凯媛20194657  阅读(182)  评论(3编辑  收藏  举报