C++ 简易计算器

一、题目说明

一个最简单的计算器支持+ - × ÷ 四种运算。输入只有一行:两个参加运算的数和一个运算符(+ - × ÷)。输出运算表达式及结果。

考虑下面两种情况:

  • 如果出现除数为0的情况,则输出:Divided by zero!
  • 如果出现无效的运算符(即不为+ - × ÷之一),则输出:Invalid operator!

输入样例:

34 + 56

输出样例:

34+56=89

二、题意分析

num1 num2存放两个参加运算的操作数,op存放运算符。

  • op+号时,实现加法操作

  • op-号时,实现减法操作

  • op*号时,实现乘法操作

  • op/号时,判断num2的值,如果不为0,实现除法操作,如果为0,则输出Divided by zero!

  • op不是以上四种运算符时,输出Invalid operator!

此程序可以用if语句实现,但是,C++ 提供了解决此类问题的最佳方法:

switch语句

三、程序如下:

#include <iostream>
using namespace std;

int main ()
{
	float num1,num2; //用float类型定义是因为用户可能输入小数
	char op; //运算符定义
	cin>>num1>>op>>num2; //输入
	switch(op) { //switch语句
		//判断加法
		case'+':cout<<num1<<op<<num2<<"="<<num1+num2<<endl; break;
		//判断减法
		case'-':cout<<num1<<op<<num2<<"="<<num1-num2<<endl; break;
		//判断乘法
		case'*':cout<<num1<<op<<num2<<"="<<num1*num2<<endl; break;
		//判断除法
		case'/':{
			if(num2!=0) cout<<num1<<op<<num2<<"="<<num1/num2<<endl;  else cout<<"Divided by zero!"<<endl; break;
		}
		//判断非法运算符
		default:cout<<"Invalid operator!"<<endl; break;
	}
    return 0;
}

运行结果:

coding

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值