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",则程序退出。

相关推荐
火云洞红孩儿1 小时前
告别界面孤岛:PyMe如何用一站式流程重塑Python GUI开发?
开发语言·python
叫我辉哥e12 小时前
新手进阶Python:办公看板集成ERP跨系统同步+自动备份+AI异常复盘
开发语言·人工智能·python
●VON2 小时前
0基础也能行!「Flutter 跨平台开发训练营」1月19日正式启动!
学习·flutter·von·openjiuwen
晚风吹长发2 小时前
初步了解Linux中的命名管道及简单应用和简单日志
linux·运维·服务器·开发语言·数据结构·c++·算法
敲敲了个代码2 小时前
如何优化批量图片上传?队列机制+分片处理+断点续传三连击!(附源码)
前端·javascript·学习·职场和发展·node.js
C++ 老炮儿的技术栈2 小时前
不调用C++/C的字符串库函数,编写函数strcpy
c语言·开发语言·c++·windows·git·postman·visual studio
布局呆星2 小时前
闭包与装饰器
开发语言·python
fyzy2 小时前
C++写后端实现,实现前后端分离
开发语言·c++
huohuopro2 小时前
Mybatis的七种传参方式
java·开发语言·mybatis
Lee_SmallNorth2 小时前
变态需求之【角色不同访问数据库的用户不同】
java·开发语言·数据库