其他分享
首页 > 其他分享> > 小韦老师@神犇营-my0089-五则计算器

小韦老师@神犇营-my0089-五则计算器

作者:互联网

小韦老师@神犇营-my0089-五则计算器

题目:

描述

一个最简单的计算器,支持 +, -, *, / , % 五种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过 int
表示的范围。

注意:

  1. 如果出现除数为 0 的情况,则输出:Error

  2. 如果出现无效的操作符(即不为 +, -, *, /, % 之一),则输出:Invalid operator

输入

输入只有一行,共有三个参数,其中第 1 个参数为整数,第 2 个参数为操作符(+, -, *, /, %),第 3 个参数为整数。

输出

输出只有一行,一个整数,为运算结果。

输入样例1

1 % 2

输出样例1

1

题解:

思路:

整体思路:
根据输入的操作符,对两个整数做操作符对应的运算。
具体步骤:
1.定义两个 int 型的变量,和一个 char 型的变量,用来存储两个运算的数
和操作符;并将这 3 个变量输入。

    int a, b;  // 运算的整数 
    char op;  // 操作符,+ - * / % 均是字符  
    cin >> a >> op >> b;  // 注意输入的顺序

2.用 switch 语句来完成判断,switch 后的表达式是存储操作符的变量,
对应的操作符要做对应的计算。
注意这里的除法的情况,要对除数为 0 的情况做特殊处理。
另外,若为其他符号,也要做处理。
每一个分支要有 break。

    switch (op) {  // switch 语句的常量表达式可以是字符型 
    case '+':  // 若 op == '+',则输出 a + b 的值 
    cout << a + b;
    break;  // 记得要 break 
    case '-':  // 若 op == '-',则输出 a - b 的值 
    cout << a - b;
    break;  // 记得要 break
    case '*':  // 若 op == '*',则输出 a + b 的值 
    cout << a * b;
    break;  // 记得要 break
    case '/':  // 若 op == '/',则要先判断除数是否为 0
    // 若除数为 0,则输出 Error,否则输出  a / b 的值 
    if (b == 0) cout << "Error";
    else cout << a / b;
    break;  // 记得要 break
    case '%':  // 若 op == '%',则输出 a % b 的值 
    cout << a % b;
    break;  // 记得要 break
    default:  // 若是其他符号,则输出 Invalid operator 
    cout << "Invalid operator";
    }

完整代码:

#include <bits/stdc++.h>

using namespace std;

int main() {
	
	int a, b;  // 运算的整数 
	char op;  // 操作符,+ - * / % 均是字符 
	cin >> a >> op >> b;  // 注意输入的顺序 
	switch (op) {  // switch 语句的常量表达式可以是字符型 
		case '+':  // 若 op == '+',则输出 a + b 的值 
			cout << a + b;
			break;  // 记得要 break 
		case '-':  // 若 op == '-',则输出 a - b 的值 
			cout << a - b;
			break;  // 记得要 break
		case '*':  // 若 op == '*',则输出 a + b 的值 
			cout << a * b;
			break;  // 记得要 break
		case '/':  // 若 op == '/',则要先判断除数是否为 0
			// 若除数为 0,则输出 Error,否则输出  a / b 的值 
			if (b == 0) cout << "Error";
			else cout << a / b;
			break;  // 记得要 break
		case '%':  // 若 op == '%',则输出 a % b 的值 
			cout << a % b;
			break;  // 记得要 break
		default:  // 若是其他符号,则输出 Invalid operator 
			cout << "Invalid operator";
	} 
	
	return 0;
}

标签:运算,int,小韦,整数,switch,操作符,my0089,神犇,op
来源: https://blog.csdn.net/qq_31790997/article/details/95628979