一、题目
请编写一个能自动生成小学四则运算题目的 “软件”。 让程序能接受用户输入答案,并判定对错。 最后给出总共 对/错 的数量。
二、需求分析
1、此软件可选择所需的四则运算符号,即加、减、乘、除。
2、对于用户选择的运算符号可自动生成两个随机数的整数想x,y。
3、该软件可通过用户手动输入运算结果,判断用户答案的对错。
4、对于用户答案的正确与否可进行统计对错数量。
三、设计
对于小学生做题数量及正确和错误题数可进行统计,帮助用户统计答题数。
四、代码
#include "stdio.h" #include"windows.h" int right=0,wrong=0; void jia(){ int x,y,z; x=rand()%100; y=rand()%100; printf("请输入您的答案:%d+%d=",x,y); scanf("%d",&z); if(x+y!=z) { printf("回答错误! "); wrong++; } else { printf("回答正确! "); right++; } } void jian(){ int x,y,z; x=rand()%100; y=rand()%100; printf("请输入您的答案:%d-%d=",x,y); scanf("%d",&z); if(x-y!=z) { printf("回答错误! ");wrong++; } else { printf("回答正确! "); right++; } } void cheng(){ int x,y,z; x=rand()%100; y=rand()%100; printf("请输入您的答案:%d*%d=",x,y); scanf("%d",&z); if(x*y!=z) { printf("回答错误! "); wrong++; } else { printf("回答正确! "); right++; } } void chu(){ int x,y,z; x=rand()%100; y=rand()%100+1; printf("请输入您的答案:%d/%d=",x,y); scanf("%d",&z); if(x/y!=z) { printf("回答错误! "); wrong++; } else { printf("回答正确! "); right++; } } void main(){ int choise,sum=0; printf(" 欢迎来到我的C语言四则运算程序系统! "); system("pause"); system("cls"); while(1) { printf(" 请选择计算符号: 加法(输入1) 减法(输入2) 乘法(输入3) 除法(输入4) "); if(sum==0)scanf("%d",&choise); switch(choise) { case 1: jia();break; case 2:jian();break; case 3:cheng();break; case 4:chu();break; } printf("请您选择: 继续(输入1) 重新(输入2) 退出(输入3) "); scanf("%d",&sum); if(sum==1)sum=1; if(sum==2)sum=0; if(sum==3)break; } printf("您一共做了%d道题,正确%d道,错误%d道! ",right+wrong,right,wrong); system("pause"); }
五、运行代码截图
六、psp计时
七、总结
对于本次作业,我还存在一些问题,例如,对于写代码还不是很熟炼,加上对psp计时也不是很了解。不过此次作业给我的最大收获是对软件工程这门课有了一点点兴趣。