这个作业属于哪个课程 | https://edu.cnblogs.com/campus/zswxy/CST2019-3 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10247 |
这个作业的目标 | 使用随机rand函数 |
作业正文 | 如下 |
其他参考文献 | https://www.runoob.com/cprogramming/c-function-rand.html |
2.2.2 设计思路和遇到的问题
使用随机数的时候不太清楚怎么控制随机数的范围,查了资料,也自己在Dev上试了下就差不多懂了,rand()%最大+最小。
还有+,-,*,/因为这个也是随机,我还特意去百度了一下有没有随机符号的,查完了之后莫名感觉自己好傻,一个数组就能解决的事。
还有关于gitte我好想还是不太会用,每次都要搞好久,老出现一些奇奇怪怪的东西,明明一样的操作,搞得我总是去百度,答案还不一定正确。什么文件冲突,搞得我一不小心把文件都删掉了,心都累了。
2.2.3 程序结果截图
2.2.4 程序代码
#include<stdio.h> #include <stdlib.h> #include <time.h> int main() { int a=0,b,c; char d; char f[4] = {'+', '-', '*', '/'}; srand((unsigned int)time(0)); printf("==========口算生成器=========\n"); printf("欢迎使用口算生成器 :\n"); printf("\n"); printf("\n"); printf("帮助信息\n"); printf("您需要输入命令代号来进行操作, 且\n"); printf("一年级题目为不超过十位的加减法;\n"); printf("二年级题目为不超过百位的乘除法;\n"); printf("三年级题目为不超过百位的加减乘除混合题目.\n"); printf("\n"); printf("\n"); while(a!=5) { printf("操作列表:\n"); printf("1)一年级 2)二年级 3)三年级\n"); printf("4)帮助 5)退出程序\n"); printf("请输入操作>"); scanf("%d",&a); printf("<执行操作:)\n"); printf("\n"); printf("\n"); switch(a) { case 1:printf("现在是一年级题目:\n"); printf("请输入生成个数>"); scanf("%d",&b); for(int i=1;i<=b;i++) { printf("%2d",rand()%11); c=rand()%2; printf(" %c ",f[c]); printf("%2d=______\n",rand()%11); } printf("\n");printf("\n");break; case 2:printf("现在是二年级题目:\n"); printf("请输入生成个数>"); scanf("%d",&b); for(int i=1;i<=b;i++) { printf("%2d",rand()%100); c=rand()%4; d=f[c]; printf(" %c ",d); if(d=='/') { printf("%2d=______\n",rand()%100-1); } else { printf("%2d=______\n",rand()%100); } } printf("\n");printf("\n");break; case 3:printf("现在是三年级题目:\n"); printf("请输入生成个数>"); scanf("%d",&b); for(int i=1;i<=b;i++) { printf("%2d",rand()%100); c=rand()%4; d=f[c]; printf(" %c ",d); if(d=='/') { printf("%2d",rand()%100+1); } else { printf("%2d",rand()%100); } d=f[c]; printf(" %c ",d); if(d=='/') { printf("%2d=______\n",rand()%100+1); } else { printf("%2d=______\n",rand()%100); } } printf("\n");printf("\n");break; case 4:printf("帮助信息\n"); printf("您需要输入命令代号来进行操作, 且\n"); printf("一年级题目为不超过十位的加减法;\n"); printf("二年级题目为不超过百位的乘除法;\n"); printf("三年级题目为不超过百位的加减乘除混合题目.\n"); printf("\n");printf("\n");break; case 5:break; default :printf("Error!!!\n"); printf("错误操作指令, 请重新输入\n");printf("\n");printf("\n");break; } } printf("程序结束, 欢迎下次使用任意键结束……"); return 0; }
2.2.6 Gitee上传截图与链接
来源:https://www.cnblogs.com/xiamudaren1/p/12408550.html