C语言寒假大作战04

问题 答案
这个作业属于哪个课程 C语言程序设计2
这个作业要求在哪 https://edu.cnblogs.com/campus/zswxy/CST2019-4/homework/10277
我在这个课程的目标是 使用switch编写菜单程序,要求实现进入与返回功能.使用rand函数来产生随机数,并算出生成口算题的结果
作业正文 在上次各年级题目中加上答案
参考文献 百度

2.2.2 设计思路和遇到的问题

在03的基础上,进行轻微修改,得出出答案。

2.2.3 程序结果截图

2.2.4 程序代码

include<stdio.h>

include <windows.h>

include<stdio.h>

include <stdio.h>

include <time.h>

include <stdlib.h>

void help();
void error();
void one();
void two();
void three();
int main()
{
int a;
printf("========== 口算生成器 ========\n");
printf("欢迎使用口算生成器 😊;
help();
while(1)
{
Sleep(1000);
printf("\n\n操作列表:\n");
printf("1)一年级 2)二年级 3)三年级\n4)帮助 5)退出程序\n请输入操作> ");
scanf("%d",&a);
printf("\n<执行操作:)\n");
Sleep(1000);
switch(a)
{
case 1:one();break;
case 2:two();break;
case 3:three();break;
case 4:help();break;
case 5:printf("\n\n程序结束, 欢迎下次使用\n任意键结束……\n");break;
default:error();break;
}
if(a
5)
break;
}
Sleep(3000);
}

void three()
{
printf("\n\n现在是三年级题目:\n");
int a,b,c,i,w;
srand((unsigned)time( NULL ));
printf("请输入生成个数>");
scanf("%d",&w);
printf("\n<执行操作:)\n");
for(i=0;i<w;i++)
{

a=rand()%100+0;

b=rand()%100+0;
c=rand()%4+1;
if(c4&&b0)
{
i--;
continue;
}

printf("%d",a);
switch(c)
{
case 1:printf(" + %d",b);break;
case 2:printf(" - %d",b);break;
case 3:printf(" * %d",b);break;
case 4:printf(" / %d",b);break;
}
int k,c1;
k=rand()%100+0;
c1=rand()%4+1;
if(c14&&k0)
{
i--;
continue;
}

    switch(c1) 
  {
        case 1:printf(" + %d",k); switch(c) 

{
case 1:printf(" = %d\n",a+b+k);break;
case 2:printf(" = %d\n",a-b+k);break;
case 3:printf(" = %d\n",ab+k);break;
case 4:printf(" = %g\n",a/(b
1.0)+k);break;
};break;
case 2:printf(" - %d",k); switch(c)
{
case 1:printf(" = %d\n",a+b-k);break;
case 2:printf(" = %d\n",a-b-k);break;
case 3:printf(" = %d\n",ab-k);break;
case 4:printf(" = %g\n",a/(b
1.0)-k);break;
};break;
case 3:printf(" * %d",k); switch(c)
{
case 1:printf(" = %d\n",a+bk);break;
case 2:printf(" = %d\n",a-b
k);break;
case 3:printf(" = %d\n",abk);break;
case 4:printf(" = %g\n",a/(b1.0)k);break;
};break;
case 4:printf(" / %d",k); switch(c)
{
case 1:printf(" = %g\n",a+b/(k1.0));break;
case 2:printf(" = %g\n",a-b/(k
1.0));break;
case 3:printf(" = %g\n",ab/(k1.0));break;
case 4:printf(" = %g\n",a/(b*1.0)/k);break;
};break;
}

}
}

void one()
{
printf("\n\n现在是一年级题目:\n");
int a,b,c,i,w;
srand((unsigned)time( NULL ));
printf("请输入生成个数>");
scanf("%d",&w);
printf("\n<执行操作:)\n");
for(i=0;i<w;i++)
{
a=rand()%10+0;
b=rand()%10+0;
c=rand()%2+1;

printf("%d",a);
switch(c)
{
case 1:printf(" + %d = %d\n",b,a+b);break;
case 2:printf(" - %d = %d\n",b,a-b);break;
}
}
}
void two()
{
printf("\n\n现在是二年级题目:\n");
int a,b,c,i,w;
srand((unsigned)time( NULL ));
printf("请输入生成个数>");
scanf("%d",&w);
printf("\n<执行操作:)\n");
for(i=0;i<w;i++)
{

a=rand()%100+0;

b=rand()%100+0;
c=rand()%2+3;
if(c4&&b0)
{
i--;
continue;
}

printf("%d",a);
switch(c)
{
case 3:printf(" * %d = %d\n",b,ab);break;
case 4:printf(" / %d = %g\n",b,a/(b
1.0));break;
}

}
}
void help()
{
printf("\n\n帮助信息\n");
printf("您需要输入命令代号来进行操作, 且\n");
printf("一年级题目为不超过十位的加减法;\n");
printf("二年级题目为不超过百位的乘除法;\n");
printf("三年级题目为不超过百位的加减乘除混合题目.");
}
void error()
{
printf("\n\nError!!!\n错误操作指令, 请重新输入\n");
}
2.2.5 Gitee上传截图与链接

链接
https://gitee.com/duanyu-123/duan_yu_20199337/tree/master/

posted @ 2020-02-17 19:15  段誉123  阅读(111)  评论(0编辑  收藏  举报