本周作业头
这个作业属于那个课程 | 寒假作业 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/10271 |
这个作业的目标是 | 使用上次作业的菜单框架,并在其基础上增加各年级题目操作函数 |
这个作业正文 | https://i-beta.cnblogs.com/posts/edit |
参考文献 | 百度、《C Prime Plus》 |
1. 设计思路和遇到的问题
1.1程序设计思路图:
1.2程序设计思路
使用rand函数来表示题目要求的数,并自定义题目程序
1.3遇到的问题:
不了解rand函数的用法以及数组的用法,后面百度查了下
- 1.使用rand函数时需要头文件为#include<stdlib.h>
- 2.如要产生[m,n]范围内的随机数num话,则:
- 3.rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。
2. 程序截图
3.代码
#include<stdio.h>
#include<stdlib.h>
void operation1();
void operation2();
void operation3();
void menu();
void help();
void error();
int main()
{
int Grade=1;
printf("========口算生成器========
欢迎使用口算生成器:)
");
help();
menu();
while(Grade!=5){
scanf("%d",&Grade);
printf("<执行操作:)
");
switch(Grade){
case 1:operation1();break;
case 2:operation2();break;
case 3:operation3();break;
case 4:help();break;
case 5:printf("程序结束,欢迎下次使用 任意键结束......
");break;
default:error();break;
}if(Grade!=5) menu();
}
return 0;
}
void operation1(){
int a,b,i;
printf("现在是一年级题目:
请输入生成个数>");
scanf("%d",&a);
for(i=0;i<a;i++){
int yi=rand()%11;
int er=rand()%11;
char c[2]={'+','-'};
b=rand()%2;
printf("%2d %c %2d=___
",yi,c[b],er);
}
}
void operation2(){
int a,b,i;
printf("现在是二年级题目:
请输入生成个数>");
scanf("%d",&a);
for(i=0;i<a;i++){
int yi=rand()%101;
int er=rand()%101;
int san=rand()%100+1;
char c[2]={'*','/'};
b=rand()%2;
if(c[b]=='/')printf("%2d %c %2d=___
",yi,c[b],san);
else printf("%2d %c %2d=___
",yi,c[b],er);
}
}
void operation3(){
int a,b,i,b1;
printf("现在是三年级题目:
请输入生成个数>");
scanf("%d",&a);
for(i=0;i<a;i++){
int yi=rand()%101;
int er=rand()%101;
int san=rand()%101;
int si=rand()%100+1;
char c[4]={'+','-','*','/'};
b=rand()%4;
b1=rand()%4;
if(c[b]=='/'&&er==0) er=si;
if(c[b1]=='/'&&san==0) san=si;
printf("%2d %c %2d %c %2d=___
",yi,c[b],er,c[b1],san);
}
}
void menu(){
printf("操作列表:
1)一年级 2)二年级 3)三年级
4)帮助 5)退出程序
请输入操作>");
}
void help(){
printf("帮助信息:
您需要输入命令代号来进行操作,且
一年级题目为不超过十位的加减法;
二年级题目为不超过百位的乘除法;
三年级题目为不超过百位的加减乘除混合题目.
");
}
void error(){
printf("Error!!!
错误操作指令,请重新输入
");
}
4. Gitee上传截图与链接