C语言寒假大作战04
这个作业属于哪个课程 | 班级链接 |
---|---|
这个作业的要求 | 作业链接 |
这个作业的目标 | 使用函数、Switch语句来完成菜单程序,产生随机运算,并得出答案。 |
参考文献 | 如何产生随机运算符 |
设计思路和遇到的问题
1.参照作业三的模板;
2.改进(产生随机运算符);
程序结果截图
程序代码
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
printf("======口算生成器======\n");
printf("欢迎使用口算生成器 ^v^\n");
printf("\n");
printf("帮助信息:\n");
printf("您需要输入命令代号来进行操作,且\n");
printf("一年级题目为不超过十位的加减法:\n");
printf("二年级题目为不超过百位的乘除法:\n");
printf("三年级题目为不超过百位的加减乘除混合题目.\n");
printf("\n");
int n=1,x,y,i,o;
time_t t;
while(n!=0){
srand((unsigned) time(&t));
printf("操作列表:");
printf("1)一年级 2)二年级 3)三年级\n");
printf("4)帮助 5)退出程序\n");
printf("请输入操作> ");
scanf("%d",&n);
printf("\n");
switch(n){
case 1:
printf("现在是一年级题目:\n");
printf("请输入生成个数> ");
scanf("%d",&y);
printf("\n");
for(i=1;i<=y;i++){
int a,b,c;
a=rand()%99,b=rand()%99;
c=rand()%o;
if(c%2==1){
printf("%d + %d = %d\n",a,b,a+b);
}else{
printf("%d - %d = %d\n",a,b,a-b);
}
}printf("\n");
break;
case 2:
printf("现在是二年级题目:\n");
printf("请输入生成个数> ");
scanf("%d",&y);
printf("\n");
for(i=1;i<=y;i++){
int c;
double a,b;
a=rand()%999,b=rand()%999;
c=rand()%o;
if(c%2==1){
printf("%.f / %.f = %.6f\n",a,b,a/b);
}else{
printf("%.f * %.f = %.f\n",a,b,a*b);
}
}printf("\n");
break;
case 3:
printf("现在是三年级题目:\n");
printf("请输入生成个数> ");
scanf("%d",&y);
printf("\n");
for(i=1;i<=y;i++){
int c;
double a,b,d;
a=rand()%999,b=rand()%999,d=rand()%999;
c=rand()%16;
switch(c){
case 0:
printf("%.f + %.f + %.f = %.f\n",a,b,d,a+b+d);break;
case 1:
printf("%.f + %.f - %.f = %.f\n",a,b,d,a+b-d);break;
case 2:
printf("%.f + %.f * %.f = %.f\n",a,b,d,a+(b*d));break;
case 3:
printf("%.f + %.f / %.f = %.6f\n",a,b,d,a+(b/d));break;
case 4:
printf("%.f - %.f + %.f = %.f\n",a,b,d,a-b+d);break;
case 5:
printf("%.f - %.f - %.f = %.f\n",a,b,d,a-b-d);break;
case 6:
printf("%.f - %.f * %.f = %.f\n",a,b,d,a-(b*d));break;
case 7:
printf("%.f - %.f / %.f = %.6f\n",a,b,d,a-(b/d));break;
case 8:
printf("%.f * %.f + %.f = %.f\n",a,b,d,(a*b)+d);break;
case 9:
printf("%.f * %.f - %.f = %.f\n",a,b,d,(a*b)-d);break;
case 10:
printf("%.f * %.f * %.f = %.f\n",a,b,d,a*b*d);break;
case 11:
printf("%.f * %.f / %.f = %.6f\n",a,b,d,a*b/d);break;
case 12:
printf("%.f / %.f + %.f = %.6f\n",a,b,d,(a/b)+d);break;
case 13:
printf("%.f / %.f - %.f = %.6f\n",a,b,d,(a/b)-d);break;
case 14:
printf("%.f / %.f * %.f = %.6f\n",a,b,d,a/b*d);break;
case 15:
printf("%.f / %.f / %.f = %.6f\n",a,b,d,a/b/d);break;
}
}printf("\n");
break;
case 4:
printf("帮助信息:\n");
printf("您需要输入命令代号来进行操作,且\n");
printf("一年级题目为不超过十位的加减法:\n");
printf("二年级题目为不超过百位的乘除法:\n");
printf("三年级题目为不超过百位的加减乘除混合题目.\n\n\n");
break;
case 5:return 0;
default:
printf("error!!!\n");
printf("错误操作指令,请重新输入\n\n\n");break;
}
}
}