问题 | 答案 |
---|---|
这个作业属于哪个课程 | 班级链接 |
这个作业的要求在哪里 | 作业要求 |
这个作业的目标 | 在自主设计一个有各年级题目的菜单栏的基础上给出相应答案。 |
参考文献 | 作业要求里提供的一系列文献随机数rand,百度百科,dev 码云。 |
2.1设计思路与遇到的问题。
(1)设计思路:在上次设计出作业的基础上变量改成浮点型变量。
(2)遇到的问题:%g刚开始不知道什么意思,到后面百度后明白了。有时候会忘记改某一个变量,导致编译错误。
2.2程序结果截图
2.3程序代码
'''
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu();
void error(int a);
void help();
int main()
{
int cj=1;
int b,m,i,g;
double A1,A2,A3,A4,A5;
char ch,ch2;
printf("========口算生成器========
");
printf("欢迎使用口算生成器:
");
printf("
");
help();
while(cj)
{
menu();
scanf("%d",&cj);
if(cj==5)
break;
switch(cj)
{
case 1:printf("现在是一年级题目:
");
printf("请输入生成题目个数:");
scanf("%d",&b);
printf("题目列表:
");
printf("
");
for(i=0;i<b;i++)
{
A1=rand()%11;
A2=rand()%11;
m=rand()%2;
if(m==1)
printf(" %.f + %.f = %g
", A1,A2,A1+A2);
else
printf(" %.f - %.f = %g
", A1,A2,A1-A2);
}
break;
case 2:printf("现在是二年级题目:
");
printf("请输入生成题目个数:");
scanf("%d",&b);
printf("题目列表:
");
printf("
");
for(i=0;i<b;i++)
{
A1=rand()%101;
A2=rand()%101;
A3=rand()%100+1;
m=rand()%2;
if(m==1)
printf(" %.f * %.f = %g
", A1,A2,A1*A2);
else
printf(" %.f / %.f = %g
", A1,A3,A1/A3);
}
break;
case 3:printf("现在是三年级题目:
");
printf("请输入生成题目个数:");
scanf("%d",&b);
printf("题目列表:");
printf("
");
for(i=0;i<b;i++)
{
A1=rand()%101;
A2=rand()%100+1;
A3=rand()%100+1;
m=rand()%4;
switch(m)
{
case 0:
ch='+';A4=A1+A2;break;
case 1:
ch='-';A4=A1-A2;break;
case 2:
ch='*';A4=A1*A2;break;
case 3:
ch='/';A4=A1/A2;break;
}
g=rand()%4;
switch(g)
{
case 0:
ch2='+';A5=A4+A3;break;
case 1:
ch2='-';A5=A4-A3;break;
case 2:
ch2='*';A5=A4*A3;break;
case 3:
ch2='/';A5=A4/A3;break;
}
printf(" %.f %c %.f %c %.f = %g
", A1,ch,A2,ch2,A3,A5);
}
break;
case 4:help();
break;
default:error(cj);
break;
}
printf("
");
}
printf("
");
printf("程序结束,欢迎下次使用....");
}
void help()
{
printf("帮助信息:
");
printf("你需要输入命令代号来进行操作,且
");
printf("一年级题目不超过十位数的加减法:
");
printf("二年级题目不超过百位的乘除发:
");
printf("三年级题目不超过百位的加减乘除混合题目。
");
printf("
");
}
void menu()
{
printf("操作列表:
");
printf("1)一年级 2)二年级 3)三年级
");
printf("4)帮助 5)提出程序
");
printf("<请输入操作>:");
printf("
");
}
void error(int a)
{
printf("Error!!!");
printf("错误操作指令,请重新输入
");
}