C# 系统学习(实例计算器)

下面是一个使用 C# 编写的简易计算器的示例代码。这个计算器将支持加、减、乘、除四种基本运算。

cs 复制代码
using System;

class Calculator
{
    static void Main(string[] args)
    {
        Console.WriteLine("欢迎使用简易计算器!");

        while (true)
        {
            Console.WriteLine("请输入第一个数字:");
            double num1 = Convert.ToDouble(Console.ReadLine());

            Console.WriteLine("请输入运算符(+、-、*、/):");
            string op = Console.ReadLine();

            Console.WriteLine("请输入第二个数字:");
            double num2 = Convert.ToDouble(Console.ReadLine());

            double result = 0.0;

            switch (op)
            {
                case "+":
                    result = num1 + num2;
                    break;
                case "-":
                    result = num1 - num2;
                    break;
                case "*":
                    result = num1 * num2;
                    break;
                case "/":
                    if (num2 != 0)
                    {
                        result = num1 / num2;
                    }
                    else
                    {
                        Console.WriteLine("除数不能为0!");
                        continue;
                    }
                    break;
                default:
                    Console.WriteLine("无效的运算符!");
                    continue;
            }

            Console.WriteLine("结果是:{0}", result);

            Console.WriteLine("是否继续?(y/n)");
            string continueChoice = Console.ReadLine();
            if (continueChoice.ToLower() != "y")
            {
                break;
            }
        }

        Console.WriteLine("感谢使用简易计算器!");
    }
}

这个程序首先输出欢迎用户使用计算器,然后进入一个无限循环,提示用户输入第一个数字、运算符和第二个数字。根据用户输入的运算符,程序会执行相应的运算,并显示结果。如果用户输入的运算符无效或者尝试进行除以零的操作,程序会显示错误信息并要求用户重新输入。在每次计算后,程序会询问用户是否继续使用计算器,如果用户输入 "n",则程序退出。

相关推荐
Tony Bai2 小时前
高并发后端:坚守 Go,还是拥抱 Rust?
开发语言·后端·golang·rust
wjs20242 小时前
Swift 类型转换
开发语言
秃了也弱了。3 小时前
python实现定时任务:schedule库、APScheduler库
开发语言·python
YJlio3 小时前
VolumeID 学习笔记(13.10):卷序列号修改与资产标识管理实战
windows·笔记·学习
weixin_440730503 小时前
java数组整理笔记
java·开发语言·笔记
小龙3 小时前
【学习笔记】多标签交叉熵损失的原理
笔记·学习·多标签交叉熵损失
Thera7773 小时前
状态机(State Machine)详解:原理、优缺点与 C++ 实战示例
开发语言·c++
知识分享小能手3 小时前
Ubuntu入门学习教程,从入门到精通,Ubuntu 22.04的Linux网络配置(14)
linux·学习·ubuntu
niucloud-admin4 小时前
java服务端——controller控制器
java·开发语言
手揽回忆怎么睡4 小时前
Streamlit学习实战教程级,一个交互式的机器学习实验平台!
人工智能·学习·机器学习