第二次作业
一、题目: 请编写一个能自动生成小学四则运算题目的 “软件”。让程序能接受用户输入答案,并判定对错。最后给出总共 对/错 的数量。
二、具体设计:
1、定义变量:a、b、c三个变量,a、b表示随机产生的0-100之间的整数用rand()%100实现,然后c表示进行各种运算后的运算结果,right表示回答正确的次数,wrong表示回答错误的次数,定义x、y表示判断选择哪种计算方式以及进行那个步骤。
2、 主函数主体部分用来做判断选择调用加减乘除哪个子函数主要用switch()实现,以及输出总的题目数量以及对与错的数量。
3、子函数部分,主要写实现加减乘除四则基本运算,判断用户输入的计算结果是否与随机产生的结果相同,如果相同,则right的次数加1,否则,wrong的次数加1 。
三、代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 | #include <stdio.h> #include <stdlib.h> #include <time.h> int wrong=0,right=0; void jia() { int a,b,c; a=rand()%100; b=rand()%100; printf( "请输入你的运算结果:%d+%d=" ,a,b); scanf( "%d" ,&c); if (a+b==c){ printf( "结果正确\n" ); right++; } else { printf( "结果错误\n" ); wrong++; } } void jian(){ int a,b,c; a=rand()%100; b=rand()%100; printf( "请输入你的运算结果:%d-%d=" ,a,b); scanf( "%d" ,&c); if (a-b==c){ printf( "结果正确\n" ); right++; } else { printf( "结果错误\n" ); wrong++; } } void cheng(){ int a,b,c; a=rand()%100; b=rand()%100; printf( "请输入你的运算结果:%d*%d=" ,a,b); scanf( "%d" ,&c); if (a*b==c){ printf( "结果正确\n" ); right++; } else { printf( "结果错误\n" ); wrong++; } } void chu(){ int a,b,c; a=rand()%100; b=rand()%100; printf( "请输入你的运算结果:%d/%d=" ,a,b); scanf( "%d" ,&c); if (a/b==c){ printf( "结果正确\n" ); right++; } else { printf( "结果错误\n" ); wrong++; } } void main(){ int x,y=0; while (1) { printf( "请选择:\n加法运算(输入1)\n减法运算(输入2)\n乘法运算(输入3)\n除法运算(输入4)\n" ); if (y==0)scanf( "%d" ,&x); switch (x) { case 1:jia(); break ; case 2:jian(); break ; case 3:cheng(); break ; case 4:chu(); break ; } printf( "\n重新选择(输入1),退出运算(输入2)" ); scanf( "%d" ,&y); if (y==1)y=0; if (y==2) break ; } printf( "做对%d道题,做错%d道题!\n" ,right,wrong); } |
四、程序效果图:
五、PSP耗时统计:
PSP |
Personal Software Process Stages |
Time(%) Senior Student |
Time(%) SDE |
Planning | 计划 | 6 | 4 |
Analysis | 需求分析 | 6 | 4 |
Dsign Spec | 生成设计文档 | 3 | 5 |
Dsign Review | 设计复审 | 4 | 6 |
Coding Standard | 代码规范 | 3 | 5 |
六、总结:
通过这次作业,我发现要想设计出一个好的软件真的非常困难。该软件不仅要实现各种运算,还要统计出运算对错的数目。虽然勉强完成了这次作业,但我知道里面一定还有很多不足之处,望各位老师指出,我也会继续更正。谢谢!!
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步