qtsz

导航

C语言寒假大作战03

1.作业头

问题 答案
这个作业属于那个课程 课程链接
这个作业要求在哪里 作业要求链接
我在这个课程的目标是 学习简单的菜单代码编写,rand()函数的简单使用
作业正文 正文链接
参考文献 参考文献链接

2.菜单程序函数调用图如下

3.设计思路和遇到的问题

思路:
    就是在之前的代码中使用rand()函数,然后经百度发现rand()%10会生成1-10的随机数,rand()%100会生成1-100的随机数,然后利用for循环即可
问题:
    随机数的取值范围,

4.程序结果截图



5.程序代码

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void menu() 
{
 printf("操作列表:\n 1)一年级  2)二年级  3)三年级\n  4)帮助  5)退出程序\n请输入操作>\n");
}
void help()
{
	printf("帮助信息:\n您需要输入命令代号来进行操作, 且\n一年级题目为不超过十位的加减法;\n二年级题目为不超过百位的乘除法;\n三年级题目为不超        过百位的加减乘除混合题目.\n\n"); 
}
void error()
{
	printf("Error!!!\n错误操作指令,请重新输入\n\n");
}
void operation_1()
{
	printf("现在是一年级的题目\n"); 
char op[2]={'+','-'} ;
int i,n;
printf("请输入生成个数> ");
scanf("%d",&n);
srand(time(NULL));
for(i=1;i<=n;i++){
	printf("%d%c%d=___\n",rand()%10,op[rand()%2],rand()%10);
} 
}
void operation_2()
{
    printf("现在是二年级的题目\n"); 
    char op[2]={'*','/'} ;
    int a,b;
    printf("请输入生成个数> ");
    scanf("%d",&b);
    srand(time(NULL));
    for(a=1;a<=b;a++){
	printf("%d%c%d=___\n",rand()%100,op[rand()%2],rand()%100);	
	}
}
void operation_3()
{
printf("现在是三年级的题目\n"); 
char op[4]={'+','-','*','/'} ;
int x,y;
 printf("请输入生成个数> ");
 scanf("%d",&y);
  srand(time(NULL));
 for(x=1;x<=y;x++){
 		printf("%d%c%d%c%d=___\n",rand()%100,op[rand()%4],rand()%100,op[rand()%4],rand()%100);
 }
}

int main()
{
    int x;
     printf("==========  口算生成器  ==========\n欢迎使用口算生成器 :\n\n");
     help();
     menu();
     while(1)
     {
 	scanf("%d",&x);
  printf("< 执行操作 >\n\n");
  switch (x)
   {        
        case 1: operation_1(); break;
        case 2: operation_2(); break;
        case 3: operation_3(); break;
        case 4: help(); break;
        case 5: printf("程序结束, 欢迎下次使用 任意键结束……\n"); break;
        default:error(); break;
       
        
      	}	
		if(x!=5)
		  menu();  
}
return 0;
}

6.Gitee上传截图与链接



gitee链接

posted on 2020-02-11 20:25  qtsz  阅读(93)  评论(0编辑  收藏  举报