1、需求分析
利用程序随机生产1-100以内的四则运算,用以提高小学生的算数能力
2、功能设计
基本功能:自动生成100以内的两个操作数的四则运算算式
扩展功能:①要求运算结果也在100以内
②剔除重复算式
③题目数量可定制
④相关参数可控制;是否包含乘法和除法;操作数数值范围可控;是否包含负数;
⑤生成的运算题存储到外部文件result.txt中
3、设计实现:①利用random产生随机数;
②利用指针使运行结果存入到外部文件;
③利用for循环剔除重复算式;
④利用printf和scanf控制题目数量和相关参数;
4、测试运行

5、代码片段
利用switch语句进行随机生成运算符号:

剔除重复算式:

6、总结
设计完成基本功能后测试无误然后再逐一添加其他功能
7、PSP
| PSP2.1 | 任务内容 | 计划共完成需要的时间(min) | 实际完成需要的时间 |
| Planning | 计划 | 30 | 90 |
| Estimate | 估算这个任务需要多少时间 | 10 | 30 |
| Development | 开发 | 60 | 120 |
| Analysis | 需求分析 | 10 | 10 |
| Design Spec | 生产设计文档 | 0 | 0 |
| Design Review | 设计复审 | 0 | 0 |
| Coding Standard | 代码规范 | 30 | 60 |
| Design | 具体设计 | 30 | 30 |
| Coding | 具体编码 | 120 | 150 |
| Code Review | 代码复审 | 30 | 90 |
| Test | 测试 | 15 | 30 |
| Reporting | 报告 | 20 | 25 |
| Text Report | 测试报告 | 20 | 20 |
| Size Measurement | 计算工作量 | 5 | 5 |
|
Postmortem&Process Improvement Plan |
事后总结,并提出过程改进计划 | 10 | 15 |