C语言寒假大作战04

这个作业属于哪个课程 C语言程序设计I
这个作业要求在哪里 https://www.cnblogs.com/douqi/p/12303521.html
这个作业的目标 了解rand()函数的运用
作业正文 https://www.cnblogs.com/lsq47/p/12312591.html
其他参考文献 %g与%d

2本次作业

2.2.2 设计思路和遇到的问题

这次作业也是在上一次作业的基础上进行添加,所以没有特别多的思路。
问题在于后面两个运算的设计,理清之后,问题就得以解决。

2.2.3 程序截图

C语言寒假大作战04_第1张图片
C语言寒假大作战04_第2张图片
C语言寒假大作战04_第3张图片

2.2.4 程序代码

include

include

include

include

include

void fact();void one();
void two();void three();
void help();void five();void error();
int main()
{
int number=1,i=1;
printf("===========口算生成器===========\n");
printf("欢迎使用口算生成器 :)\n");
printf("\n");
printf("帮助信息:\n");
printf("您需要输入命令代号来进行操作,且\n");
printf("一年级题目为不超过十位数的加减法:\n");
printf("二年级题目为不超过百位数的乘除法:\n");
printf("三年级题目为不超过百位数的加减乘除混合题目。\n");
while(i!=0){
printf("\n");
printf("操作列表:\n");
printf("1)一年级 2)二年级 3)三年级\n");
printf("4)帮助 5)退出程序\n");
printf("请输入操作> ");
scanf("%d",&number);
printf("<执行操作:)\n");
printf("\n");
switch(number){
case 1:printf("请输入生成个数>");
one();break;
case 2:printf("请输入生成个数>");
two();break;
case 3:printf("请输入生成个数>");
three();break;
case 4:help();break;
case 5:five();i=0;
break;
default:error();break;}}
return 0;
}

void fact(){
printf("\n");
printf("操作列表:\n");
printf("1)一年级 2)二年级 3)三年级\n");
printf("4)帮助 5)退出程序\n");
printf("请输入操作> ");
}

void help(){
printf("帮助信息:\n");
printf("您需要输入命令代号来进行操作,且\n");
printf("一年级题目为不超过十位数的加减法:\n");
printf("二年级题目为不超过百位数的乘除法:\n");
printf("三年级题目为不超过百位数的加减乘除混合题目。\n");
}

void one(){
int i,n,x,y,z;
scanf("%d",&n);
srand((unsigned)time(NULL));
for(i=1;i<=n;i++){
x=rand()%10;
y=rand()%10;
z=rand()%2;
if(z==0){
printf("%2d + %2d = %2d",x,y,x+y);}
else{
printf("%2d - %2d = %2d",x,y,x-y);
}
printf("\n");
}
}

void two(){
int i,n,x,y;
float z;
scanf("%d",&n);
srand((unsigned)time(NULL));
for(i=1;i<=n;i++){
x=rand()%100;
y=rand()%100;
z=rand()%2;
if(z==0){
printf("%2d * %2d = %2d",x,y,xy);}
else{
y!=0;
z=x/(y
1.0);
printf("%2d / %2d = %g",x,y,z);
}
printf("\n");
}
}

void three(){
int o,d,i,a,b,c;
float z;
char fh1[2],fh2[2];
time_t t;
srand((unsigned) time(&t));
printf("现在是三年级题目:\n");
printf("请输入生成个数>\n");
scanf("%d",&o);
printf("<执行操作:)\n");
char fh[4][6] = {"","/","+","-"};
for (int i=0; i {
a=rand() % 100;
b=rand() % 100;
c=rand() % 100;
while (a==0||b==0||c==0)
{
a=rand() % 100;b=rand() % 100;c=rand() % 100;
}
strcpy(fh1,fh[rand() % 3]);
strcpy(fh2,fh[rand() % 3]);
if(strcmp(fh1,"
")==0&&strcmp(fh2,"")==0)
{
z = a
b * c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"")==0&&strcmp(fh2,"/")==0)
{
z = a
b / (c1.0);
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"
")==0&&strcmp(fh2,"+")==0)
{
z = a * b + c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"")==0&&strcmp(fh2,"-")==0)
{
z = a
b - c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"/")==0&&strcmp(fh2,"+")==0)
{
z = a / (b1.0) + c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"/")==0&&strcmp(fh2,"-")==0)
{
z = a / (b
1.0) - c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"/")==0&&strcmp(fh2,"/")==0)
{
z = a / (b1.0) / (c1.0);
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"+")==0&&strcmp(fh2,"-")==0)
{
z = a + b - c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"+")==0&&strcmp(fh2,"+")==0)
{
z = a + b + c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"-")==0&&strcmp(fh2,"-")==0)
{
z = a - b - c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"/")==0&&strcmp(fh2,"")==0)
{
z = a / (b
1.0) * c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"+")==0&&strcmp(fh2,"/")==0)
{
z = a + b / (c1.0);
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"+")==0&&strcmp(fh2,"
")==0)
{
z = a + b * c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"-")==0&&strcmp(fh2,"/")==0)
{
z = a - b / (c1.0);
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"-")==0&&strcmp(fh2,"+")==0)
{
z = a - b + c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
else if(strcmp(fh1,"-")==0&&strcmp(fh2,"
")==0)
{
z = a - b * c;
printf("%2d %s %2d %s %2d = %g\n",a,fh1,b,fh2,c,z);
}
}
}

void five(){
printf("\n");
printf("程序结束,欢迎下次使用,任意键结束.....\n");
}

void error(){
printf("\n");
printf("Error!!!\n");
printf("错误操作指令,请重新输入\n");
}

Gitee上传截图与链接

C语言寒假大作战04_第4张图片
C语言寒假大作战04_第5张图片
刘嗣麒的仓库

你可能感兴趣的:(C语言寒假大作战04)