1.需求分析:
使用C或Java语言完成一个自动生成四则运算试题的程序,以便简化运算过程,提高效率。
2.功能设计
(1)自动生成10道100以内的2个操作数的四则运算算式(+ - * /),要求运算结果也在100以内
(2)剔除重复算式。 2 + 3 = 和 2 + 3 = 是重复算式 2 + 3 = 和 3 + 2 = 不属于重复算式
(3)题目数量可定制
(4)相关参数可控制
是否包含乘法和除法
操作数数值范围可控(如操作数 在100以内 还是1000以内)
操作数是否含负数
(5)生成的运算题存储到外部文件result.txt中
3.设计实现
用c语言编写程序,在c-free中用main函数实现
4.运行测试
5.插入代码
1 main() 2 { 3 4 int rand_1,rand_2,rand_3,i; 5 int rand_4,store=0; 6 int number,temp,number_1; 7 srand((unsigned)time(NULL));//生成随机种子 8 printf("请输入您要生成题目的数量\n"); 9 scanf("%d",&number);//定义输入控制循环变量 10 printf("0 代表加减乘除随机生成\n1 代表加\n2 代表减\n3 代表乘\n4 代表除\n"); 11 scanf("%d",&temp);//选项 12 number_1=number; 13 while(number>=1) 14 { 15 16 switch(temp)//选项内容 17 { 18 case 0: number--;break;//退出循环 19 20 21 case 1: rand_1= rand()%100; //随机种子 22 rand_2= rand()%100; 23 rand_3=rand_1+rand_2;//运算 24 if(rand_3<1000) 25 number--;//计次 26 else 27 break; 28 printf("%d+%d=%d\n",rand_1,rand_2,rand_3); 29 number_1=0; 30 break;//退出循环 31 32 case 2: rand_1= rand()%100; 33 rand_2= rand()%100; 34 rand_3=rand_1-rand_2; 35 if(rand_3<1000) 36 number--; 37 else 38 break; 39 printf("%d-%d=%d\n",rand_1,rand_2,rand_3); 40 number_1=0; 41 break;
1 if(number_1>=1)//查看时候进行上面的算法满足则进行 2 { 3 4 5 while(1)//死循环 6 { 7 rand_4=rand()%100; 8 rand_4=rand_4/10;//生成随机数 9 //+++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 10 if(rand_4>=0&&rand_4<=3)//产生随机选择四个运算 11 { 12 13 switch(rand_4) 14 { 15 case 0: 16 rand_1= rand()%100; //此处同上 17 rand_2= rand()%100; 18 rand_3=rand_1+rand_2; 19 if(rand_3<1000) 20 store++; 21 else 22 break; 23 printf("%d+%d=%d\n",rand_1,rand_2,rand_3); 24 break;
6.总结
程序编写的不太完善,也有好多不懂得地方,以后多加改正,认真学习。
7.PSP
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min) |
Planning |
计划 |
20 |
20 |
Estimate |
· 估计这个任务需要多少时间,并规划大致工作步骤 |
30 |
40 |
Development |
开发 |
110 |
150 |
Analysis |
需求分析 (包括学习新技术) |
10 |
15 |
Design Spec |
· 生成设计文档 |
10 |
15 |
Design Review |
· 设计复审 (和同事审核设计文档) |
10 |
15 |
Coding Standard |
代码规范 (为目前的开发制定合适的规范) |
10 |
15 |
Design |
具体设计 |
20 |
30 |
Coding |
具体编码 |
60 |
120 |
Code Review |
· 代码复审 |
10 |
15 |
Test |
· 测试(自我测试,修改代码,提交修改) |
15 |
30 |
Reporting |
报告 |
20 |
30 |
Test Report |
·总结改进 |
10 |
20 |
原文:https://www.cnblogs.com/lichao20194713/p/11529501.html