C语言寒假大作战03

这个作业属与那个课程 https://edu.cnblogs.com/campus/zswxy/CST2019-3
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-3/homework/10270
我在这个课程课程目标 上次作业的菜单框架,并在其基础上增加各年级题目操作函数
这个作业在那个具体方面帮我实现目标 熟练使用码云,函数的基础知识
参考文献 https://www.runoob.com/cprogramming/c-standard-library-stddef-h.html

一.本周作业

㈠.2.2.2 设计思路和遇到的问题

设计思路:
先有生成多少个题界面要生成,加减乘除符号和算术表达的生成
遇到的问题:
1.函数的概念基本忘的差不多了,对于aseall码值的陌生,对于rand函数的使用;
2.怎么利用aseall怎样表达随机生成的算数表达式;

㈡.2.2.3 程序结果截图





㈢.2.2.4 程序代码

#include<stdio.h> 
#include<stdlib.h>
void memu();
void help();
void error();
void one_grade();
void two_grade();
void three_grade();
 
 int control;//循环控制变量
 int flag;//swith菜单选择变量
 int main()
 {
 	printf("欢迎使用口算生成器:)\n\n");
 	help();
 	do
 	{
 		control = 1;
 		memu();
 	}
 	while(control);
 	return 0;
     }
     //菜单函数定义 
     void memu()
     {
     	printf("操作列表:\n1)一年级    \n2)二年级     \n3三年级   \n4)帮助   \n5)退出程序)\n");
   	  printf("请输入操作>"); 
   	  scanf("%d",&flag);
   	  switch(flag)
   	  {
   	  	case 1:
   	  		one_grade();
   	  		break;
   	  	case 2:
   	  		two_grade();
   	  		break;
   	  	case 3: 
   	  		three_grade();
   	  		break;
   	  	case 4:
   	  		help();
   	  		break;
   	  	case 5:
   	  		printf("欢迎下次使用\n");
   	  		control=0;
   	  		break;
   	  	default:
   	  		error();
}
}
   		   
   	  //错误函数定义 
void error()
{
   printf("Error!!!\n错误操作指令,请重新输入\n\n\n");
   
}
   //帮助函数定义
   void help()
   {
   	printf("帮助信息:\n");
   	printf("您需要输入命令代号来进行操作, \n且一年级题目为不超过十位的加减法;\n二年级题目为不超过百位数的乘法;\n三年级题目为不超过百位的加减乘除混合题目");
   	 
   				  }	  		
//各个年级题目函数定义
void one_grade()
{
   int num;
   printf("<执行操作 :)\n\n现在是一年级题目:\n请输入生成的个数>\n\n:");
   scanf("%d",&num);
   printf("<执行操作:)\n\n");
   int i,c=1;
   for(i=0;i<num;i++)
   {
   	while(control!=0)
   	{
   		char op=rand()%3+43;
   		if(op==44)
   		continue;
   		else
   		{
   			printf("%2d %c %2d = __\n",rand()%10,op,rand()%10);
   			  break;
   		}
   		
   	}
   }
} 
void two_grade()
{
 int num;
printf("<执行操作 :)\n\n现在是二年级题目:\n请输入生成个数>\n\n");
    scanf("%d",&num);
    printf("<执行操作:)\n\n");
    int i,c=1;
    for(i=1;i<=num;i++)
    {
    	while(c!=0)
   	 {
    		char op=rand()%6+42;
    		int x=rand()%100,y=rand()%100;
    		if(op >42&&op<47||y==0)
    		continue;
    		else 
   		 {
    			printf("%2d %c %2d  = ___\n",x,op,y);
    			break;
   		 }
   	 }
    }
    
     }
     
     
void three_grade()
{
   int num;
   
   printf("<执行操作 :)\n\n现在是三年级题目:\n执\n请输入生成个数>\n\n");
   scanf("%d",&num);
   printf("<执行操作 :)\n\n");
   int i,c=1;
   for(i=1;i<=num;i++)
   {
   	while(c!=0)
   	{
   		char op=rand()%6+42,m=rand()%6+42;
   		int x=rand()%100,y=rand()%100,z=rand()%100;
   		if(op==44||op==46||m==44||m==46)
   		continue;
   		if(op==47&&y==0||m==47&&z==0)
   		{
   			continue;
   		}
   			else
   			{
   				printf("%2d %c %2d %c %2d  = ____\n",x,op,y,m,z);
   				 break;
   			}
   	}
   }

}

㈣.2.2.5

㈤.2.2.6 Gitee上传截图与链接

个人链接 :https://gitee.com/hu_qing_qing

posted @ 2020-02-12 15:53  GoblinQ  阅读(196)  评论(0编辑  收藏  举报
复制代码