【小超嵌入式】C++实现简单计算器

一、程序源码

#include <iostream>
using namespace std;
int main()
{
    char op;
    float num1, num2;
    cout << "输入运算符:+、-、*、/ : ";
    cin >> op;
    cout << "输入两个数: ";
    cin >> num1 >> num2;
    switch(op)
    {
        case '+':
            cout << num1+num2;
            break;
        case '-':
            cout << num1-num2;
            break;
        case '*':
            cout << num1*num2;
            break;
        case '/':
            if (num2 == 0)
            {
                cout << "error不能除以零";
                break;
            }
            else
            {
                cout << num1 / num2;
                break;
            }
        default:
            // 如果运算符不是 +, -, * 或 /, 提示错误信息
            cout << "Error!  请输入正确运算符。";
            break;
    }
    return 0;
}

二、代码分析

下面我们逐行分析代码:

#include <iostream>

这行代码包含了iostream头文件,它提供了输入输出流的功能,如cincout

using namespace std;

这行代码表示我们将在整个程序中使用std命名空间中的标识符,而无需每次都前缀std::

int main()
{

这是主函数的开始,每个C++程序都必须有一个main函数,它是程序的入口点。

    char op;
    float num1, num2;

这里声明了三个变量:

  • char op:一个字符型变量,用于存储用户输入的运算符。
  • float num1, num2:两个浮点型变量,用于存储用户输入的数值。
    cout << "输入运算符:+、-、*、/ : ";
    cin >> op;

这两行代码首先使用cout输出一个提示信息,告诉用户需要输入一个运算符。然后使用cin从标准输入读取一个字符并将其存储到op变量中。

    cout << "输入两个数: ";
    cin >> num1 >> num2;

同样的,先用cout输出一个提示信息让用户输入两个数字,再用cin读取这两个数字并将它们存储到num1num2变量中。

    switch(op)
    {
        case '+':
            cout << num1+num2;
            break;

        case '-':
            cout << num1-num2;
            break;

        case '*':
            cout << num1*num2;
            break;

        case '/':
            if (num2 == 0)
            {
                cout << "error不能除以零";
                break;
            }
            else
            {
                cout << num1 / num2;
                break;
            }

        default:
            // 如果运算符不是 +, -, * 或 /, 提示错误信息
            cout << "Error! 请输入正确运算符。";
            break;
    }

这部分代码使用switch语句根据op的值执行不同的操作:

  • 对于加法、减法和乘法,直接进行相应的运算并输出结果。
  • 对于除法,先检查num2是否为零,如果是零,则输出错误信息“error不能除以零”,否则执行除法运算并输出结果。
  • 如果op的值不是上述四种运算符之一,输出错误信息“Error! 请输入正确运算符。”。
    return 0;
}

这是主函数的结束部分,return 0;意味着程序正常终止,返回给操作系统一个值为0的状态码,通常表示成功。

相关推荐

  1. 嵌入C++实现简单计算器

    2024-07-11 22:56:05       14 阅读
  2. 嵌入】猜数字游戏详细分析

    2024-07-11 22:56:05       20 阅读
  3. 使用ShopifySharp实现Shopify简单对接(C#)

    2024-07-11 22:56:05       49 阅读
  4. 嵌入——C++】引用

    2024-07-11 22:56:05       51 阅读
  5. 嵌入——C++】模板

    2024-07-11 22:56:05       58 阅读
  6. 嵌入——C++】STL

    2024-07-11 22:56:05       47 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-07-11 22:56:05       70 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-07-11 22:56:05       74 阅读
  3. 在Django里面运行非项目文件

    2024-07-11 22:56:05       62 阅读
  4. Python语言-面向对象

    2024-07-11 22:56:05       72 阅读

热门阅读

  1. pom.xml中重要标签介绍

    2024-07-11 22:56:05       26 阅读
  2. 科技的成就(六十一)

    2024-07-11 22:56:05       20 阅读
  3. 全球网络战市场规模未来十年将超过万亿元

    2024-07-11 22:56:05       22 阅读
  4. 使用kubeadm重置k8s集群

    2024-07-11 22:56:05       19 阅读
  5. k8s中使用cert-manager生成自签名证书

    2024-07-11 22:56:05       18 阅读
  6. k8s中控制器DaemonSet简介及用法

    2024-07-11 22:56:05       23 阅读
  7. 使用 Python 中的 `sklearn` 库实现 KNN 分类

    2024-07-11 22:56:05       23 阅读
  8. 如何在Windows系统中关闭占用特定端口的进程

    2024-07-11 22:56:05       19 阅读
  9. go语言小练习——基于goroutine实现的Tcp聊天室

    2024-07-11 22:56:05       27 阅读
  10. 前端面试题日常练-day85 【面试题】

    2024-07-11 22:56:05       22 阅读
  11. Vue的学习之class与style绑定

    2024-07-11 22:56:05       20 阅读
  12. day11:01文件处理

    2024-07-11 22:56:05       25 阅读