20194597——四则运算题第一版报告
一、需求分析:
1、自动随机生成加减乘除四则运算;
2、控制生成题目的个数;
3、判断出答案是否正确;
4、能统计出答题正确数以及最后的分数。
二、功能设计
(一)基本功能
通过加减乘除的四则运算可以快速地算出随机数的结果,一般情况下对小学生和老师都有一定的帮助。
(二)扩展功能
我在此次作业中加入了对随机数发出的运算式进行了对错的判断。
三、设计实现
1、自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
2、剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
3、题目数量可定制
4、相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
5、生成的运算题存储到外部文件result.txt中
6、最终, 我们初步实现的是随机数的四则运算在一百以内以及对结果的判断对错和计入总分功能,之后我们会根据需求加以更正。
四、测试运行
1、自动随机生成加减乘除四则运算;
2、控制生成题目的个数;
3、判断出答案是否正确;
4、能统计出答题正确数以及最后的分数。
二、功能设计
(一)基本功能
通过加减乘除的四则运算可以快速地算出随机数的结果,一般情况下对小学生和老师都有一定的帮助。
(二)扩展功能
我在此次作业中加入了对随机数发出的运算式进行了对错的判断。
三、设计实现
1、自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
2、剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
3、题目数量可定制
4、相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
5、生成的运算题存储到外部文件result.txt中
6、最终, 我们初步实现的是随机数的四则运算在一百以内以及对结果的判断对错和计入总分功能,之后我们会根据需求加以更正。
四、测试运行
五、代码片段
1.导入到文本文件
1 FILE*fp; 2 3 fp=fopen("E:\\刘天乐的运行结果.txt","w") ;
2.最后的运算结果可以根据回答对错个数得分
1 if(c == result) //与正确答案一致 2 { 3 score+= 10; //加分 4 printf("Right\n\n"); 5 } 6 else 7 { 8 printf("Wrong\n\n"); //错开 9 } 10 } 11 printf("Yourscore is: %d\n\n\n", score);//显示十道题的得分 12 return 1;
3.基本的随机数的生成部分代码显示情况
1 for(i=0;i<10;i++) //做十题 2 { 3 a = rand() % 100; //生成一个0~100之间的随机数 4 b = rand() % 100; //生成一个0~100之间的随机数 5 mode = rand() % 4; //生成一个0~3之间的随机数,代表运算符 6 printf("%d", a); 7 switch(mode) //确定运算符 8 { 9 case 0: 10 fprintf(fp,"%d + %d=%d\n",a,b,a+b); 11 12 result= a + b; //选择了+运算的正确答案 13 break; 14 case 1: 15 fprintf(fp,"%d - %d=%d\n",a,b,a-b); 16 result= a - b; //选择了-运算的正确答案 17 break;
六、总结
本程序由c语言编写而成,在C-Free版本的编译器上测试执行成功。可实现:自动随机生成加减乘除四则运算、控制生成题目的个数、统计答题正确数和总分的功能。很遗憾未能实现要求的对分数的运算处理。查阅了一些资料也找同学请教了,只是我的基础有点差所以有些地方弄得不是特别清楚。我会尽力改正。
本程序由c语言编写而成,在C-Free版本的编译器上测试执行成功。可实现:自动随机生成加减乘除四则运算、控制生成题目的个数、统计答题正确数和总分的功能。很遗憾未能实现要求的对分数的运算处理。查阅了一些资料也找同学请教了,只是我的基础有点差所以有些地方弄得不是特别清楚。我会尽力改正。
七、PSP
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min) |
Planning |
计划 |
30 |
60
|
· Estimate |
· 估计这个任务需要多少时间,并规划大致工作步骤 |
480 |
600 |
Development |
开发 |
240 |
480 |
·· Analysis |
需求分析 (包括学习新技术) |
30 |
60 |
· Design Spec |
· 生成设计文档 |
30 |
120 |
· Design Review |
· 设计复审 (和同事审核设计文档) |
30 |
60 |
· Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
60 |
60 |
· Design |
具体设计 |
30 |
30 |
· Coding |
具体编码 |
60 |
60 |
· Code Review |
· 代码复审 |
10 |
20 |
· Test |
· 测试(自我测试,修改代码,提交修改) |
10 |
30 |
Reporting |
报告 |
60 |
120 |
·· Test Report |
· 测试报告 |
30 |
60 |
· Size Measurement |
计算工作量 |
300 |
600 |
· Postmortem & Process Improvement Plan |
· 事后总结 ,并提出过程改进计划 |
60 |
60 |
注:我这里的计划量时间和预计时间重复到一起的。