C语言【牛客网习题积累】简单计算器

描述

KiKi实现一个简单计算器,实现两个数的“加减乘除”运算,用户从键盘输入算式“操作数1运算符操作数2”,计算并输出表达式的值,如果输入的运算符号不包括在(+、-、*、/)范围内,输出“Invalid operation!”。当运算符为除法运算,即“/”时。如果操作数2等于0.0,则输出“Wrong!Division by zero!”

数据范围:字符串长度满足 3 \le n \le 50 \3≤n≤50  ,保证运算符是一个char类型字符。

输入描述:

输入一行字符串,操作数1+运算符+操作数2 (其中合法的运算符包括:+、-、*、/)。

输出描述:

输出为一行。

如果操作数和运算符号均合法,则输出一个表达式,操作数1运算符操作数2=运算结果,各数小数点后均保留4位,数和符号之间没有空格。

如果输入的运算符号不包括在(+、-、*、/)范围内,输出“Invalid operation!”。当运算符为除法运算,即“/”时。

如果操作数2等于0.0,则输出“Wrong!Division by zero!”。

示例1

输入:

1.0+3.0

复制输出:

1.0000+3.0000=4.0000

复制

示例2

输入:

1.0;4.0

复制输出:

Invalid operation!

复制

示例3

输入:

44.0/0.0

复制输出:

Wrong!Division by zero!
#include <stdio.h>

int main() 
{
    double n1=0;
    double n2=0;
    char op=0;
    while(scanf("%lf%c%lf",&n1,&op,&n2)!=EOF)
    {
        switch(op)
        {
            case'+':
                printf("%.4lf+%.4lf=%.4lf", n1, n2, n1+n2);
                break;
            case'-':
                printf("%.4lf-%.4lf=%.4lf", n1, n2, n1-n2);
                break;
            case'*':
                printf("%.4lf*%.4lf=%.4lf", n1, n2, n1*n2);
                break;
            case'/':
                if(n2 == 0.0)
                {
                    printf("Wrong!Division by zero!\n");
                }
                else
                    printf("%.4lf/%.4lf=%.4lf", n1, n2, n1/n2);
                break;
            default:
                printf("Invalid operation!\n");
                break;
        }
    }
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值