这个作业属于哪个课程 | 班级的链接 |
---|---|
这个作业要求在哪里 | 作业要求的链接 |
这个作业的目标 | 随机生成口算题,学习新的库函数-rand() |
其他参考文献 | 随机数rand |
作业正文 | 此篇博客 |
2.2.2设计思路和遇到的问题
设计思路
1.思考如何如何使用新函数rand(),并进行其运算。
2.在上一次作业代码中进行修改,添加随机数。
2.2.3 程序结果截图
2.2.4程序代码
#include<stdio.h>
#include <stdlib.h>
#include<time.h>
int help(int a)
{
printf("
");
printf("帮助信息:
");
printf("您需要输入命令代号来进行操作,且
");
printf("一年级题目为不超过十位的加减法;
");
printf("二年级题目为不超过百位的乘除法;
");
printf("三年级题目为不超过百位的加减乘除混合题目.
");
}
int main()
{
int i,a,b,c,n;
char ch1,ch2;
time_t t;
srand((unsigned) time(&t));
printf("====口算生成器====
");
printf("欢迎使用口算生成器:
");
printf("帮助信息:
");
printf("您需要输入代号命令号来进行操作,另
");
printf("一年级题目为不超过十位的加减法;
");
printf("二年级题目为不超过百位的乘除法;
");
printf("三年级题目为不超过百位的加减乘除混合题目.
");
printf("操作列表:
1)一年级 2)二年级 3)三年级
4)帮助 5)退出程序
");
printf("请输入操作:
");
while(a!=5)
{
printf("
");
printf("操作列表:
1)一年级 2)二年级 3)三年级
4)帮助 5)退出程序
");
printf("请输入操作: ");
scanf("%d",&a);
switch(a)
{
case 1:
printf("现在是一年级题目:
请输入生成个数: ");
scanf("%d",&n);
printf("执行操作:
");
for(i=0;i<n;i++)
{
b= rand() % 2;
if(b==1)
printf(" %d + %d =
", rand()%11,rand()%11);
else
printf(" %d - %d =
", rand()%11,rand()%11);
}
break;
case 2:
printf("现在是二年级题目:
请输入生成个数:");
scanf("%d",&n);
printf("执行操作:
");
for(i=0;i<n;i++)
{
b= rand() % 2;
if(b==1)
printf(" %d * %d =
", rand()%101,rand()%101);
else
printf(" %d / %d =
", rand()%101,rand()%101);
}
break;
case 3:
printf("现在是三年级题目:
请输入生成个数:");
scanf("%d",&n);
printf("执行操作:
");
for(i=1;i<=n;i++)
{
b=rand()%4;
switch(b)
{
case 0:
ch1='+';break;
case 1:
ch1='-';break;
case 2:
ch1='*';break;
case 3:
ch1='/';break;
}
c=rand()%4;
switch(c)
{
case 0:
ch2='+';break;
case 1:
ch2='-';break;
case 2:
ch2='*';break;
case 3:
ch2='/';break;
}
printf("%d%c%d%c%d =
",rand()%101,ch1,rand()%101,ch2,rand()%101);
}
break;
case 4:
help(a);
break;
case 5:
printf("程序结束, 欢迎下次使用
任意键结束……
");
break;
default:
printf("Error!!!
错误操作指令, 请重新输入
");
}
}
}