题目描述:
试编写一个根据用户输入的两个操作数和一个运算符( 只包含+、-、*、/ ),由计算机输出运算结果的程序。
当操作数是除号("/")时,运算结果是整除的结果,如10/3=3;并且当除数为0时,输出“Error!”。
操作数都是整数。
输入格式:
输入的第一行是两个操作数由一个空格隔开,第二行是一个运算符。
输出格式:
输出一个数,表示运算的结果。
样例输入:
1 2 +
样例输出:
3
提示:
注意除数为0的情况。
比如判断字符a是不是加号,可以用 if(a=='+')来表示,字符要用单个引号括起来。
本题也可以用switch语句来编写,这样显得更简洁(所有的switch语句都可以用if语句编写,反之不然)。
switch语句格式:
switch (表达式)
{
case 常量表达式1:
语句1;
……
break; //每路分支都要加上break,否则会执行到下面去。
case 常量表达式2:
语句1;
……
break;
……
case 常量表达式n:
语句1;
……
break;
default: //都不满足之前的条件,执行最后的默认分支,这一分支也可以省略。
语句1;
……
}
时间限制: 1000ms
空间限制: 128MB
代码如下:
- #include<bits/stdc++.h>
- using namespace std;
- int main(){
- long long a,b;
- char c;
- cin>>a>>b>>c;
- if(c=='+'){
- cout<<a+b;
- }
- if(c=='-'){
- cout<<a-b;
- }
- if(c=='*'){
- cout<<a*b;
- }
- if(c=='/'){
- if(b==0){
- cout<<"Error!";
- }else{
- cout<<a/b;
- }
- }
- return 0;
- }