结对项目

这个作业属于哪个课程 计科国际班
这个作业要求在哪里 作业要求
这个作业的目标 实现一个自动生成小学四则运算题目的命令行程序

合作者:一位朋友
GitHub

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 60 60
· Estimate · 估计这个任务需要多少时间 10 10
Development 开发 240 200
· Analysis · 需求分析 (包括学习新技术) 60 60
· Design Spec · 生成设计文档 20 20
· Design Review · 设计复审 (和同事审核设计文档) 10 10
· Coding Standard · 代码规范 (为目前的开发制定合适的规范) 10 10
· Design · 具体设计 60 40
· Coding · 具体编码 90 90
· Code Review · 代码复审 20 20
· Test · 测试(自我测试,修改代码,提交修改) 120 120
Reporting 报告 30 30
· Test Report · 测试报告 20 20
· Size Measurement · 计算工作量 10 10
· Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 30 30
合计 790 630

重要函数
srand()和rand()
srand()为初始化随机数发生器,用于设置rand()产生随机数时的种子。传入的参数seed为unsigned int类型,通常我们会使用time(0)或time(NULL)的返回值作为seed。
将time(NULL)的返回值作为seed,使用rand()生成随机数,还可以用rand()随机产生运算符。

设计流程
1.随机获取自然数;
2.随机获取四则运算符;
3.将随机数和随机运算符组合起来,加上等号得到四则运算题目,并将题目存入文件;

测试运行
结对项目
结对项目
成功生成10000道题目

效能分析(10个等式)
结对项目
摘要图
结对项目
调用函数时间占比
结对项目
各函数的调用次数和时间占比

项目心得
这次结对项目,使我明白在结对编程过程中,事先确定好代码规范是很重要的,否则双方都很难看懂各自的代码。结对编程是我们能更加容易地解决遇到的问题和困难,省下了很多时间。由于时间关系和个人能力的缘故,导致我们只完成了四则运算等式的生成,生成答案和批改来不及做。

上一篇:C 产生随机数


下一篇:【Hive】Hive实现数据抽样的三种方法