C语言寒假大作战03
这个作业属于那个课程 | 2019级计算机科学与技术1班 |
---|---|
这个作业要求在哪里 | https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10272 |
我在这个课程的目标是 | 使用上次作业的菜单框架,并在其基础上增加各年级题目操作函数 |
作业正文 | C语言寒假大作战03 |
其他参考文献 | 随机数rand |
2.2.2 设计思路和遇到的问题
刚开始的时候只觉得在原有的基础上添加一些代码就完事了,后来操作才知道这一些代码是很复杂的,看了帮助资料与参考了同学的才得出答案。
2.2.3 程序结果截图
2.2.4 程序代码
#include<stdio.h>
#include <stdlib.h>
#include <time.h>
void help();
void menu();
void error();
void one();
void two();
void three();
int main()
{
int n;
printf("========== 口算成器 ==========\n");
printf("欢迎使用口算生成器:)\n");
printf("\n");
help();
menu();
while(1)
{
scanf("%d",&n);
switch(n)
{
case 1:one();break;
case 2:two();break;
case 3:three();break;
case 4:help();break;
case 5:printf("程序结束,欢迎下次使用\n任意键结束......");break;
default:error();break;
}
}
return 0;
}
void help()
{
printf("帮助信息\n您需要输入命令代号来进行操作, 且\n一年级题目为不超过十位的加减法;\n二年级题目为不超过百位的乘除法;\n三年级题目为不超过百位的加减乘除混合题目.\n");
printf("\n");
}
void menu()
{
printf("操作列表:\n1)一年级 \n2)二年级 \n3)三年级\n");
printf("4)帮助 5)退出程序\n");
printf("请输入操作>\n");
}
void error()
{
printf("Error!!!\n");
printf("错误操作指令, 请重新输入\n");
}
void one()
{
int n,a,i;
char op;
op = rand()%3+43;
printf("现在是一年级题目:\n");
printf("请输入生成个数>");
scanf("%d",&n);
printf("<执行操作:)\n\n");
printf("/*----- 一年级 -----*/\n");
for(i=1;i<=n;i++)
{
while(a!=1)
{
char op;
op = rand()%3+43;
if(op==44)
continue;
else
printf("%2d %c %2d = __\n",rand()%10,op,rand()%10);break;
}
}
}
void two()
{
printf("现在是二年级题目:\n");
int a,b,n,i;
printf("请输入所需要的题目个数");
scanf("%d",&n);
printf("<执行操作:)\n\n");
printf("/*----- 二年级 -----*/\n");
for(i=1;i<=n;i++)
{
while(a!=1)
{
char op;
op = rand()%6+42;
b = rand()%100;
if(op>42&&op<47||op==47&&b==0)
continue;
else
printf("%2d %c %2d = __\n",rand()%100,op,b);break;
}
}
}
void three()
{
printf("现在是三年级题目:\n");
printf("请输入生成个数>\n");
int a,b,c,n,i;
scanf("%d",&n);
printf("<执行操作:)\n");
printf("/*----- 三年级 -----*/\n");
for(i=1;i<=n;i++)
{
while(a!=1)
{
char op,d;
op = rand()%6+42;
d = rand()%6+42;
b = rand()%100;
c = rand()%100;
if(op==44||op==46||d==44||d==46||op==47&&op==0||d==47&&op==0)
continue;
else
printf("%2d %c %2d %c %2d = __\n",rand()%100,op,b,d,c);break;
}
}
}