标签:
一、题目
请编写一个能自动生成小学四则运算题目的 “软件”。 让程序能接受用户输入答案,并判定对错。 最后给出总共 对/错 的数量。
二、分析
1、此软件可选择所需的四则运算符号,即加、减、乘、除。
2、对于用户选择的运算符号可自动生成两个随机数。
3、通过用户手动输入运算结果,该软件可判断用户答案的正确性。
4、对于用户答案的正确与否可进行统计。
三、代码
#include<stdio.h> #include<math.h> #include<windows.h> int right=0; int wrong=0; void plus() { int x,y,z; x=rand()%100; y=rand()%100; printf("请回答:\n\t\t %d + %d = ",x,y); scanf("%d",&z); if(x+y==z) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void subtract() { int x,y,z; x=rand()%100; y=rand()%100; printf("请回答:\n\t\t %d - %d = ",x,y); scanf("%d",&z); if(x-y==z) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void multiply() { int x,y,z; x=rand()%100; y=rand()%100; printf("请回答:\n\t\t %d * %d = ",x,y); scanf("%d",&z); if(x*y==z) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n"); wrong++; } } void divide() { int x,y,z; x=rand()%100; y=rand()%100; printf("请回答:\n\t\t %d / %d = ",x,y); scanf("%d",&z); if(x/y==z) { printf("回答正确!\n"); right++; } else { printf("回答错误!\n" ); wrong++; } } void main() { int choise; int p=0; printf("\n\t\t\t欢迎进入小学四则运算\n\n"); while(1) { printf("请选择:\n"); printf("\t\t\t 加法运算(请输入1)\n"); printf("\t\t\t 减法运算(请输入2)\n"); printf("\t\t\t 乘法运算(请输入3)\n"); printf("\t\t\t 除法运算(请输入4)\n"); printf("\t\t\t 退出运算(请输入5)\n"); if(p==0) scanf("%d",&choise); switch(choise) { case 1: plus();break; case 2: subtract();break; case 3: multiply(); break; case 4: divide(); break; case 5: return; }
printf("\n\t\t\t继续该运算?(请输入1)\n"); printf("\n\t\t\t重新选择?(请输入2)\n"); printf("\n\t\t\t退出运算?(请输入3)\n"); scanf("%d",&p); if(p==1) p=1; else if(p==2) p=0; else if(p==3) break; else printf("输入指令有误!请重新输入!\n"); } printf("做对 %d 道\n做错 %d 道\n",right,wrong); }
四、程序效果截图
五、PSP耗时统计
PSP |
Personal Software Process Stages |
Time(%) Senior Student |
Time(%) SDE |
Plannig | 计划 | 10 | 8 |
Analysis | 需求分析 | 10 | 8 |
Design Spec | 生成设计文档 | 80 | 84 |
Design Review | 设计复审 | 4 | 6 |
Coding Standard | 代码规范 | 2 |
2 |
六、总结
通过这次作业,让我尝试到了软件开发是一件挺辛苦的事。该软件能够完成简单的小学四则运算,我觉得很不错。例如,可根据自己的需要选择所需的四则运算符号(加、减、乘、除),根据用户选择的运算符号,系统可自动生成两个随机数,而且可对用户输入的运算结果进行判断对错并统计对错数量等。当然,它同时也存在着一些不足之处。比如说,产生的两个随机数均为整数,但在计算除法时,结果可能会出现小数,而软件会将计算所得结果自动化为整数,导致结果错误,这是还需改进的地方。所有我会继续努力,争取将它更加完善。
标签:
原文地址:http://www.cnblogs.com/hgl1023/p/4415651.html