1. 本周作业头
这个作业属于哪个课程 | 班级作业链接 |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
这个作业的目标 | 在之前的基础上加上答案 |
作业正文 | https://www.cnblogs.com/Litinga/p/12294612.html |
其他参考文献 | 学长录制的视频 |
2. 设计思路和遇到的问题
心路历程:平淡,内心毫无波动-->一年级的较为简单-->二年级的除法有点问题-->借鉴别人的博客-->写完了
程序设计思路:在上次作业的基础上,把加上答案即可
遇到的问题:二年级的除法不能用int,而是double。
3. 程序结果截图
4.程序代码截图
#include<stdio.h> #include<stdlib.h> void yinianji() { printf("执行操作\n"); printf("\n"); printf("现在是一年级题目:\n"); printf("请输入生成题目数目:\n"); int x; scanf("%d",&x), printf("执行操作:\n"); for(int i;i<10;i++) { int a = rand()%2; int b = rand()%11; int c = rand()%11; if(a==1) printf("%d + %d = %d\n",b,c,b+c); else printf("%d - %d = %d\n",b,c,b-c); } printf("\n"); } void ernianji() { int y; printf("执行操作\n"); printf("\n"); printf("现在是二年级题目:\n"); printf("请输入生成题目数目:\n"); scanf("%d",&y); printf("执行操作\n"); for(int i;i<y;i++) { int a = rand()%2; int b = rand()%11; int c = rand()%11; if(a==1) printf("%d * %d = %d\n",b,c,b*c); else printf("%d / %d = %d\n",b,c,b/(c*1.0)); } printf("\n"); } void sannianji() { int z; printf("执行操作\n"); printf("\n"); printf("现在是三年级题目:\n"); printf("请输入生成题目数目:\n"); scanf("%d",&z); printf("执行操作\n"); for(int i=1;i<=z;i++) { int a = rand() % 100; int b = rand() % 100; int c = rand() % 100; int d = rand() % 2; int e = rand() % 2; if(d==1&&e==1) { printf(" %d + %d * %d = %.8g\n",a,b,c,(double)a+b*c); } if(d==1&&e==2||e==0) { printf(" %d + %d / %d = %.8g\n",a,b,c,(double)a+b/c); } if(d==2&&e==1) { printf(" %d - %d * %d = %.8g\n",a,b,c,(double)a-b*c); } if(d==2||d==0&&e==1) { printf(" %d - %d / %d = %.8g\n",a,b,c,(double)a-b/c); } } printf("\n"); } void cuowu() { printf("Error!\n"); printf("错误操作指令,请重新输入\n"); printf("\n"); } void help() { printf("\n"); printf("帮助信息\n"); printf("您需要输入命令代号来进行操作,且\n"); printf("一年级题目为不超过十位数的加减法;\n"); printf("二年级的题目为不超过百位数的乘除法;\n"); printf("三年级的题目为不超过百位的加减乘除的混合题目.\n"); printf("\n"); } int main() { printf("======口算生成器======\n"); printf("欢迎使用口算生成器:\n"); printf("\n"); printf("帮助信息\n"); printf("您需要输入命令代号来进行操作,且\n"); printf("一年级的题目为不超过十位数的加减法;\n"); printf("二年级的题目为不超过百位数的乘除法:\n"); printf("三年级的题目为不超过百位数的加减乘除的混合题目.\n"); printf("\n"); printf("操作列表:\n"); printf("1)一年级 2)二年级 3)三年级\n"); printf("4)帮助 5)退出程序\n"); printf("请输入操作:"); int x; int b=1; scanf("%d",&x); while(5) { if(x==5) { break; } switch(x) { case 1 : yinianji ();break; case 2 : ernianji ();break; case 3 : sannianji ();break; case 4 : help ();break; default : cuowu ();break; } printf("操作列表:\n"); printf("1)一年级 2)二年级 3)三年级\n"); printf("4)帮助 5)退出程序\n"); printf("请输入操作:"); x=0; scanf("%d",&x); } printf("执行操作\n"); printf("\n"); printf("程序结束,欢迎下次使用,按任意键结束"); getchar(); return 0; }
5. Gitee上传截图与链接
来源:https://www.cnblogs.com/Litinga/p/12294612.html