19:简单计算器
描述
一个最简单的计算器,支持+, -, *, / 四种运算。仅需考虑输入输出为整数的情况,数据和运算结果不会超过int表示的范围。
输入
输入只有一行,共有三个参数,其中第1、2个参数为整数,第3个参数为操作符(+,-,*,/)。
输出
输出只有一行,一个整数,为运算结果。然而:
1. 如果出现除数为0的情况,则输出:Divided by zero!
2. 如果出现无效的操作符(即不为 +, -, *, / 之一),则输出:Invalid operator!提示
可以考虑使用if和switch结构。
#include<bits/stdc++.h>
using namespace std;
int main()
{
int a,b,d;char c;
scanf("%d %d %c",&a,&b,&c);
if(c=='+') printf("%d",d=a+b);
else if(c=='-')
printf("%d",d=a-b);
else if(c=='*')
printf("%d",d=a*b);
else if(c=='/'){
if(b==0)
printf("Divided by zero!");
else
printf("%d",d=a/b);
}
else
printf("Invalid operator!");
return 0;
}
上面是正确答案。
本题一个要点在于,如何能单用if语句解决问题。
定义c为字符型,储存输入的计算符号,以便下面进行符号判断。对于正常的加减乘三种运算,使用if及else if并列书写。而在除法部分中嵌入一个新if语句,对除数b进行判断,从而解题。
思路:
1.并列四则运算。
2.除法特殊处理。
3."Invalid operator!"处不要忘记。
(完)