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


    这个作业属于那个课程 C语言程序设计II
    这个作业要求在哪里 C语言寒假大作战04
    我在这个课程的目标是 完善计算题生成器
    作业正文 博客正文
    参考文献 百度知道 ,%g与%d

    2.2.2 设计思路和遇到的问题

    设计思路:
    通过if——else判断随机生成的运算符号来进行计算出相应随机生成的计算题答案
    遇到的问题:
    此次作业未遇到问题


    2.2.3 程序结果截图







    2.2.4 程序代码

         #include<stdio.h>
         #include<stdlib.h>
         #include <time.h>
         int menu();
         int help();
         int error();
         int grade1(int b);
         int grade2(int b);
         int grade3(int b); 
         int main()
        {
    int n,m=0;
    while (m != 1)
    {
    printf("========口算生成器========
    ");
    printf("欢迎使用口算生成器 :
    ");
    printf("
    ");
    help();
    printf("
    ");
    printf("
    ");
    menu();
    scanf_s("%d", &n);
    
    	switch (n)
    	{
    	case 1:grade1(n); break;
    	case 2:grade2(n); break;
    	case 3:grade3(n); break;
    	case 4:help(); break;
    	case 5:m = 1;printf("程序结束, 欢迎下次使用
    任意键结束……"); break;
    	default:error(); break;
    	}
         }
          }
       int help()
       {
    printf("帮助信息 :
    ");
    printf("您需要输入命令代号来进行操作,且
    ");
    printf("一年级题目为不超过十位的加减法:
    ");
    printf("二年级题目为不超过百位的乘除法:
    ");
    printf("三年级题目为不超过百位的加减乘除混合运算题目.
    
    ");
    return 1;
       }
        int menu()
       {
    printf("操作列表:
    ");
    printf("1)一年级  2)二年级  3)三年级
    ");
    printf("4)帮助    5)退出程序
    ");
    printf("请输入操作数>");
    return 1;
       }
        int error()
       {
    printf("Error!!!
    ");
    printf("错误操作指令,请重新输入
    ");
    return 1;
       } 
       int grade1(int b)
       {
    int i,n,z,m,k,sum=0;
    char op;
    srand((unsigned)time(NULL));
    printf("<执行操作:)
    ");
    printf("现在是一年级题目:
    ");
    printf("请输入生成个数>");
    scanf_s("%d", &n);
    for (i = 0; i < n; i++)
    {
    	z = rand() % 2;
    	if (z == 0) 
    		op = '+'; 
    		if (z == 1)
    			op = '-';
    		m = rand() % 10;
    		k = rand() % 10;
    		if (op == '+')
    			sum = m + k;
    		else
    			sum = m - k;
    	printf("%2d%2c%2d=%2d
    ",m,op, k,sum);
    }
    printf("执行完了
    ");
    return 1;
       }
      int grade2(int b)
      {
    double i, n, z,a,m,sum=0;
    char op;
    srand((unsigned)time(NULL));
    printf("<执行操作:)
    ");
    printf("现在是二年级题目:
    ");
    printf("请输入生成个数>");
    scanf_s("%lf", &n);
    for (i = 0; i < n; i++)
    {
    	z = rand() % 2;
    	if (z == 0)
    		op = '*';
    	if (z == 1)
    		op = '/';
    	a = rand() % 10;
    	if (op=='/'&&a == 0)
    		a = rand()%9+1;
    	m = rand() % 10;
    	if (op == '*')
    		sum = m * a;
    	else
    		sum = m / a;
    	printf("%2g%2c%2g=%2g
    ",m,op,a,sum);
    }
    printf("执行完了
    ");
    return 1;
      }
      int grade3(int b)
      {
    double i, n, z1,z2, a,d,c,sum1=0,sum2=0;
    char op1,op2;
    srand((unsigned)time(NULL));
    printf("<执行操作:)
    ");
    printf("现在是三年级题目:
    ");
    printf("请输入生成个数>");
    scanf_s("%lf", &n);
    for (i = 0; i < n; i++)
    {
        a = rand() % 100;
    	z1 = rand() % 4;
    	if (z1 == 0)
    		op1= '+';
    	if (z1 == 1)
    		op1 = '-';
    	if (z1 == 2) 
    		op1= '*';
    	if (z1 == 3) 
    		op1 = '/'; 
    	d = rand() % 100;
    	if (op1 == '/' && d == 0)
    		d = rand() % 99 + 1;
    	else
    		d = rand() % 100;
    	if (op1 == '+')
    		sum1 = a + d;
    	else
    		if (op1 == '-')
    			sum1 = a - d;
    		else
    			if (op1 == '*')
    				sum1 = a * d;
    			else
    				sum1 = a / d;
    	z2 = rand() % 4;
    	if (z2 == 0)
    		op2 = '+';
    	if (z2== 1)
    		op2 = '-';
    	if (z2 == 2)
    		op2 = '*';
    	if (z2 == 3)
    		op2 = '/';	
    	c = rand() % 100;
    	if (op2 == '/' && c == 0)
    		c = rand() % 99 + 1;
    	else 
    		c = rand() % 100;
    	if (op2 == '+')
    		sum2= sum1 + c;
    	else
    		if (op2 == '-')
    			sum2 = sum1 - c;
    		else
    			if (op2 == '*')
    				sum2 = sum1 * c;
    			else
    				sum2 = sum1 / c;
    	printf("%2g%2c%2g%2c%2g=%2g
    ", a,op1,d,op2,c,sum2);
    }
    printf("执行完了
    ");
    return 1;
       }
    

    2.2.5 Gitee上传截图与链接



    2.2.6Gitee主页

    我的主页

  • 相关阅读:
    pythonsys.exit()
    Python字符串格式化
    Json概述以及python对json的相关操作
    python学习笔记——异常
    Python:sys.argv[]用法
    python学习笔记——字符串,列表,字典,集合,数值,sorted
    python class 的属性
    Python模块——unittest 单元测试
    从sql2000 复制数据到sql2005
    abstract、virtual及override
  • 原文地址:https://www.cnblogs.com/lzjzjy/p/12292705.html
Copyright © 2011-2022 走看看