zoukankan      html  css  js  c++  java
  • 四则运算

    ------------恢复内容开始------------
    一、作业信息
    [博客班级] 软件工程
    [作业要求] 作业要求
    [作业目标] 能够精准高效完成四则运算并输出结果;
    [学号] 318071334

    二、作业要求
    写一个能自动生成小学四则运算题目的程序,然后在此基础上扩展:
    1.除了整数以外,还要支持真分数的四则运算,例如:1/6+1/8=7/24
    2.程序要求能处理用户的输入,判断对错,累积分数
    3.程序支持可以由用户自行选择加、减、乘、除运算
    4.使用-n参数控制生成题目的个数,例如Myapp.exe -n 10,将生成10个题目

    三、代码提交和运行截图

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    #include <time.h>
    void add_oper();//加法运算
    void sub_oper();//减法运算
    void mul_oper();//乘法运算
    void div_oper();//除法运算
    void menu();
    
    int main()
    {	
    	int select;
    	do 
    	{
    		menu();
    		scanf_s("%d", &select);
    		switch (select)
    		{
    			case 1: add_oper(); break;
    			case 2: sub_oper(); break;
    			case 3: mul_oper(); break;
    			case 4: div_oper(); break;
    			default:break;
    		}
    	}while (select > 0);
    }
    
    void menu()//菜单函数
    {
    	printf("欢迎使用四则运算器
    ");
    	printf("1.加法运算
    ");
    	printf("2.减法运算
    ");
    	printf("3.乘法运算
    ");
    	printf("4.除法运算
    ");
    	printf("0.退出
    ");
    }
    
    void add_oper()//加法运算法则
    {
    	int x, y, z = 0, anwser, amount,i,T = 0, F = 0;//x,y为随机生成的两个数,x y计算结果的值暂存于z中,anwser为使用者输入的答案,amount为输入的题目数,T,F显示计算题目的正确错误数
    	printf("请输入你想计算的题目数");
    	scanf_s("%d", &amount);
    	for (i = 1; i <= amount; i++)
    	{ 
    	    srand(time(NULL));
    	    x = rand() % 100;
    	    y = rand() % 100;
    	    z = x + y;
    		printf("%d+%d=", x, y);
    		printf("两数之和为:");
    		scanf_s("%d", &anwser);
    		if (z == anwser)
    		{
    			printf("回答正确
    ");
    			T++;
    		}
    		else
    		{
    			printf("回答错误
    ");
    			F++;
    		}	
    	}
    	printf("此次运算正确题数为%d,错题数为%d。
    ", T, F);
    }
    
    void sub_oper()//减法运算法则
    {
    	int x, y, z = 0, anwser, amount, i, T = 0, F = 0;
    	printf("请输入你想计算的题目数");
    	scanf_s("%d", &amount);
    	for (i = 1; i <= amount; i++)
    	{
    		srand(time(NULL));
    		x = rand() % 100;
    		y = rand() % 100;
    		z = x + y;
    		printf("%d-%d=", x, y);
    		printf("两数之差为:");
    		scanf_s("%d", &anwser);
    		if (z == anwser)
    		{
    			printf("回答正确
    ");
    			T++;
    		}
    		else
    		{
    			printf("回答错误
    ");
    			F++;
    		}
    	}
    	printf("此次运算正确题数为%d,错题数为%d。
    ", T, F);
    }
    void mul_oper()//乘法运算法则
    {
    	int x, y, z = 0, anwser, amount, i, T = 0, F = 0;
    	printf("请输入你想计算的题目数");
    	scanf_s("%d", &amount);
    	for (i = 1; i <= amount; i++)
    	{
    		srand(time(NULL));
    		x = rand() % 100;
    		y = rand() % 100;
    		z = x + y;
    		printf("%d*%d=", x, y);
    		printf("两数之积为:");
    		scanf_s("%d", &anwser);
    		if (z == anwser)
    		{
    			printf("回答正确
    ");
    			T++;
    		}
    		else
    		{
    			printf("回答错误
    ");
    			F++;
    		}
    	}
    	printf("此次运算正确题数为%d,错题数为%d。
    ", T, F);
    }
    
    void div_oper()//除法运算法则
    {
    	int x, y, z = 0, anwser, amount, i, T = 0, F = 0;
    	printf("请输入你想计算的题目数");
    	scanf_s("%d", &amount);
    	for (i = 1; i <= amount; i++)
    	{
    		srand(time(NULL));
    		x = rand() % 100;
    		y = rand() % 100;
    		z = x + y;
    		printf("%d/%d=", x, y);
    		printf("两数之商为:");
    		scanf_s("%d", &anwser);
    		if (z == anwser)
    		{
    			printf("回答正确
    ");
    			T++;
    		}
    		else
    		{
    			printf("回答错误
    ");
    			F++;
    		}
    	}
    	printf("此次运算正确题数为%d,错题数为%d。
    ", T, F);
    }
    

    运行截图




    psp2.1 任务内容 计划完成需要的时间(min) 实际完成需要的时间(min)
    Planning 计划 30 45
    Estimate 估计这个任务需要多少时间,并规划大致工作步骤 5 6
    Development 开发 360 540
    Analysis 需求分析(包括学习新技术 10 30
    Design Spec 生成设计文档 15 40
    Design Review 设计复审 5 10
    Coding Standard 代码规范 3 5
    Design 具体设计 10 50
    Coding 具体编码 100 300
    Code Review 代码复审 5 10
    Test 测试(自我测试,修改代码,提交修改) 10 20
    Reporting 报告 10 20
    Test Report 测试报告 10 20
    Size Measurement 计算工作量 3 5
    Postmortem & Process Improvement Plan 事后总结,并提出过程改进计划 3 4

    个人小结
    初次使用博客园的时候,存在很多意想不到的问题,markdown格式的使用也很别扭。
    四则运算的题目虽然很简单,但是在编写的过程中,也出现了一些让我很头疼的问题,之前的c语言知识,很长时间没有使用,也都忘得差不多了。
    经过此次的编写,让我学到了很多东西,今后对代码编写的能力也会进一步的提高。

  • 相关阅读:
    快排
    Single Number II
    简单工厂和工厂方法
    Implement strStr()
    Linked List Cycle II
    Linked List Cycle
    适配器模式
    Struts2的ActionContext
    javaScript学习随笔
    Tomcat 基本配置(转)
  • 原文地址:https://www.cnblogs.com/Rasend027/p/13944803.html
Copyright © 2011-2022 走看看