C语言寒假大作战04

这个作业属于那个课程 2019级计算机科学与技术1班
这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-1/homework/10280
我在这个课程的目标是 使用上次作业的菜单框架,并在其基础上增加各年级题目的答案函数
作业正文 C语言寒假大作战04
其他参考文献 百度

2.2.2 设计思路和遇到的问题

加上答案函数就得理清接下来的答案会发生什么样的结果,然后根据基础知识理清用if语句来分情况对算式进行解析。

2.2.3 程序结果截图

2.2.4 程序代码

#include<stdio.h>
#include <stdlib.h>
#include <time.h>
void help();
void menu();
void error();
void one();
void two();
void three();
int main()
{
	int n;
	printf("========== 口算成器 ==========\n");
	printf("欢迎使用口算生成器:)\n");
	printf("\n");
    help();
    menu();
    while(1)
    {
    	scanf("%d",&n);
    	switch(n)
		{
			case 1:one();break;
			case 2:two();break;
			case 3:three();break;
			case 4:help();break;
			case 5:printf("程序结束,欢迎下次使用\n任意键结束......");break;
			default:error();break;
		}
	}
	return 0;
}
void help()
{
	printf("帮助信息\n您需要输入命令代号来进行操作, 且\n一年级题目为不超过十位的加减法;\n二年级题目为不超过百位的乘除法;\n三年级题目为不超过百位的加减乘除混合题目.\n");
    printf("\n");
}

void menu()
{
	printf("操作列表:\n1)一年级    \n2)二年级    \n3)三年级\n");
	printf("4)帮助     5)退出程序\n");
	printf("请输入操作>\n");
}
void error()
{
	printf("Error!!!\n");
	printf("错误操作指令, 请重新输入\n");
}
void one()
{
	int n,a,i,b,c,sum=0;
	char op;
	op = rand()%3+43;
	printf("现在是一年级题目:\n");
	printf("请输入生成个数>");
	scanf("%d",&n);
	printf("<执行操作:)\n\n");
	printf("/*----- 一年级 -----*/\n");
	for(i=1;i<=n;i++)
	{
		while(a!=1)
		{
			char op;
			op = rand()%3+43;
			b = rand()%10;
			c = rand()%10;
			if(op==44)
			   continue;
			else
			if(op==43)
			sum = b + c;
			if(op==45)
			sum = b - c;
			   printf("%2d %c %2d = %2d\n",b,op,c,sum);break;
		}	
	}
	
	
}
void two()
{
	printf("现在是二年级题目:\n");
	int a,b,n,i,c;
	double sum = 0;
	printf("请输入所需要的题目个数");
	scanf("%d",&n); 
	printf("<执行操作:)\n\n");
	printf("/*----- 二年级 -----*/\n");
	
	
	for(i=1;i<=n;i++)
	{
		while(a!=1)
		{
			char op;
			op = rand()%6+42;
			b = rand()%100;
			c = rand()%100;
			if(op>42&&op<47||op==47&&b==0)
			    continue;
			else
			if(op==42)
			sum = b*c;
			if(op==47)
			sum = 1.0*b/c;
			    printf("%2d %c %2d = %2g\n",b,op,c,sum);break;
		}
	}
}
void three()
{
	printf("现在是三年级题目:\n");
	printf("请输入生成个数>\n");
    int a,b,c,n,i,m;
    double sum = 0;
	scanf("%d",&n);
	printf("<执行操作:)\n");
	printf("/*----- 三年级 -----*/\n"); 
	
	
	for(i=1;i<=n;i++)
	{
		while(a!=1)
		{
			char op,d;
			op = rand()%6+42;
			d = rand()%6+42;
			b = rand()%100;
			c = rand()%100;
			m = rand()%100;
			if(op==44||op==46||d==44||d==46||op==47&&op==0||d==47&&op==0)
			   continue;
			else
			if(op==42&&d==43)
			sum = m*b+c;
			if(op==42&&d==45)
			sum = m*b-c;
			if(op==42&&d==42)
			sum = m*b*c;
			if(op==42&&d==47)
			sum = m*b*1.0/c;
			if(op==43&&d==43)
			sum = m+b+c;
			if(op==43&&d==45)
			sum = m+b-c;
			if(op==43&&d==47)
			sum = m+b*1.0/c;
			if(op==45&&d==42)
			sum = m-b*c;
			if(op==45&&d==43)
			sum = m-b+c;
			if(op==45&&d==47)
			sum = m-b*1.0/c;
			if(op==47&&d==42)
			sum = m*1.0/b*c;
			if(op==47&&d==43)
			sum = m*1.0/b+c;
			if(op==47&&d==45)
			sum = m*1.0/b-c;
			if(op==47&&d==47)
			sum = m*1.0/b/c;
			   printf("%2d %c %2d %c %2d = %2g\n",m,op,b,d,c,sum);break;
		}
	}
}

2.2.5 Gitee上传截图与链接

码云链接:https://gitee.com/qq827839114/dashboard

posted @ 2020-02-17 13:24  笋干爆炸  阅读(125)  评论(0编辑  收藏  举报