C语言寒假大作战03
一 | 二 |
---|---|
这个作业属于那个课程 | C语言程序设计II |
这个作业要求在哪里 | 作业要求 |
我在这个课程的目标是 | 学会使用rand()函数 |
这个作业在那个具体方面帮我实现目标 | 百度遇到的问题 |
参考文献 | 随机数 |
2.1设计思路和遇到的问题
设计思路:用rand函数来输出一定范围内的随机数
遇到的问题:rand函数运用不够熟练
2.2.3 程序结果截图
2.2.4 程序代码
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int help(int a);
int error(int a);
int main()
{
printf("========== 口算生成器 ==========\n");
printf("欢迎使用口算生成器 :\n");
printf("\n\n");
printf("帮助信息\n");
printf("您需要输入命令代号来进行操作, 且\n");
printf("一年级题目为不超过十位的加减法;\n");
printf("二年级题目为不超过百位的乘除法;\n");
printf("三年级题目为不超过百位的加减乘除混合题目.\n");
int i,a,n,x,y;
time_t t;
srand((unsigned) time(&t));
while(i!=5)
{
printf("\n\n");
printf("操作列表:\n");
printf("1)一年级 2)二年级 3)三年级\n");
printf("4)帮助 5)退出程序\n");
printf("请输入操作> ");
scanf("%d",&i);
printf("<执行操作 :)\n\n\n");
switch(i)
{
case 1:printf("现在是一年级题目\n");
printf("请输入生成个数> ");
scanf("%d",&n);
printf("<执行操作 :)\n\n");
for(a=1;a<=n;a++)
{
x=rand()%2;
if(x!=0)
printf("%d - %d =\n",rand()%11,rand()%11);
else
printf("%d + %d =\n",rand()%11,rand()%11);
}break;
case 2:printf("现在是二年级题目:\n");
printf("请输入生成个数> ");
scanf("%d",&n);
printf("<执行操作 :)\n\n");
for(a=1;a<=n;a++)
{
x=rand()%2;
if(x!=0)
printf("%d * %d =\n",rand()%101,rand()%101);
else
printf("%d / %d =\n",rand()%101,rand()%101+1);
}break;
case 3:printf("现在是三年级题目:\n");
printf("请输入生成个数> ");
scanf("%d",&n);
printf("<执行操作 :)\n\n");
for(a=1;a<=n;a++)
{
x=rand()%16;
if(x==0)
printf("%d + %d + %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==1)
printf("%d + %d - %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==2)
printf("%d + %d * %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==3)
printf("%d + %d / %d =\n",rand()%101,rand()%101,rand()%101+1);
else if(x==4)
printf("%d - %d + %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==5)
printf("%d - %d - %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==6)
printf("%d - %d * %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==7)
printf("%d - %d / %d =\n",rand()%101,rand()%101,rand()%101+1);
else if(x==8)
printf("%d * %d + %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==9)
printf("%d * %d - %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==10)
printf("%d * %d * %d =\n",rand()%101,rand()%101,rand()%101);
else if(x==11)
printf("%d * %d / %d =\n",rand()%101,rand()%101,rand()%101+1);
else if(x==12)
printf("%d / %d + %d =\n",rand()%101,rand()%101+1,rand()%101);
else if(x==13)
printf("%d / %d - %d =\n",rand()%101,rand()%101+1,rand()%101);
else if(x==14)
printf("%d / %d * %d =\n",rand()%101,rand()%101+1,rand()%101);
else
printf("%d / %d / %d =\n",rand()%101,rand()%101+1,rand()%101+1);
}break;
case 4:help(i);break;
case 5:printf("程序结束, 欢迎下次使用\n");
printf("任意键结束……\n");break;
default:error(i); break;
return 0;
}
}
}
int help(int a)
{
printf("帮助信息\n");
printf("您需要输入命令代号来进行操作, 且\n");
printf("一年级题目为不超过十位的加减法;\n");
printf("二年级题目为不超过百位的乘除法;\n");
printf("三年级题目为不超过百位的加减乘除混合题目.\n");
}
int error(int a)
{
printf("Error!!!\n");
printf("错误操作指令, 请重新输入\n");
}