zoukankan      html  css  js  c++  java
  • C语言寒假大作战03

    问题 答案
    这个作业属于哪个课程 班级链接
    这个作业的要求在哪里 作业要求
    这个作业的目标 在自主设计一个菜单栏的基础上增加各年级题目操作函数。
    作业正文 如下
    参考文献 作业要求里提供的一系列文献随机数rand,百度百科,dev 码云。

    2.1设计的思路和遇到的问题。

    (1)设计思路:在上次完成的菜单栏框架的基础上在执行一年级,二年级,三年级的switch语句里面加上rand随机数函数来生成计算式子。
    (2)遇到的问题:二年级的随机式子总是只生成一个,反复检查后发现是其中一个变量设置错了。

    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,ch,ch2,g;
       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++)
    			   {
    			   		m=rand()%2;
    			   		if(m==1)
    			   		printf(" %d + %d = 
    ", rand()%11,rand()%11);
    			   		else
    			   		printf(" %d - %d = 
    ", rand()%11,rand()%11);
    			   }
    			   
    			   break;
    		case 2:printf("现在是二年级题目:
    ");
    			   printf("请输入生成题目个数:");
    			   scanf("%d",&b);
    			   printf("题目列表:
    "); 
    			   printf("
    ");
    			   for(i=0;i<b;i++)
    			   {
    			   		m=rand()%2;
    			   		if(m==1)
    			   		printf(" %d * %d = 
    ", rand()%101,rand()%101);
    			   		else
    			   		printf(" %d / %d = 
    ", rand()%100+1,rand()%100+1);
    			   }
    			   break;
    		case 3:printf("现在是三年级题目:
    ");
    		       printf("请输入生成题目个数:");
    		       scanf("%d",&b);
    			   printf("题目列表:"); 
    		       printf("
    ");
    		       for(i=0;i<b;i++)
    		       {
    		       		m=rand()%4;
    		       		switch(m)
    		       		{
    		       			case 0:
    		       			ch='+';break;
    		       			case 1:
    		       			ch='-';break;
    		       			case 2:
    		       			ch='*';break;
    		       			case 3:
    		       			ch='/';break;
    					   }
    						g=rand()%4;
    						switch(g)
    						{
    							case 0:
    		       				ch2='+';break;
    		       				case 1:
    		       				ch2='-';break;
    		       				case 2:
    		       				ch2='*';break;
    		       				case 3:
    		       				ch2='/';break;
    						}
    						printf(" %d %c %d %c %d = 
    ",rand()%101,ch,rand()%100+1,ch2,rand()%100+1);
    			   }
    		       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("错误操作指令,请重新输入
    ");
    }
    

    2.4Gitee上传截图与链接

    陈琬琰yoyo

  • 相关阅读:
    【转】清理vs2008中的最近打开项目
    GridView的RowCommand事件传两个或以上参数
    ASP.NET中获取DataList中的控件
    判断导入的Excel中的数据
    ASP.NET中获取GridView中的控件
    Oracle拼接序列
    asp.net常用到的字符串处理
    文本框只能输入数字代码
    Tomcat多域名,虚拟目录配置
    Windows2008 部署tomcat后,局域网访问不了的问题
  • 原文地址:https://www.cnblogs.com/chenwanyan/p/12298922.html
Copyright © 2011-2022 走看看