c#编写简单计算器

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        double a = 0;                           //后面结果用到
        double b = 0;                           //后面结果用到
        Boolean c = false;                      //当c为true时  实现清零效果
        String d;                               
        public Form1()
        {
            InitializeComponent();
        }

        private void button17_Click(object sender, EventArgs e)
        {

            textBox1.Text = "";                   //清除功能,将textBox1中的内容变为空             
        }

        private void button11_Click(object sender, EventArgs e)
        {
            if (c == true)                          //c的默认值为false,所以这里不会执行if循环,  而是直接进行 “textBox1.Text += "1"  ”
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "1";                   //这里的 +1 并不是数值加1  而是字符串个数加1  点一下是1  两下是11  三下是111       (底下的以此类推)
        }

        private void button12_Click(object sender, EventArgs e)
        {
            if (c == true)                          //点击一次加法(或者乘法,除法,减法)后,c被赋值为true  
            {                                       //执行这条
                textBox1.Text = "";                 //textBox被清空,显示你第二次点击的数字
                c = false;                          //c再次被赋值为false,
            }
            textBox1.Text += "2";                   //再次执行这句话,不管if是否执行,最下面这句话每次都要执行,  
        }

        private void button13_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "3"; 
        }

        private void button6_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "4"; 
        }

        private void button7_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "5"; 
        }

        private void button8_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "6"; 
        }

        private void button1_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "7"; 
        }

        private void button2_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "8"; 
        }

        private void button3_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "9"; 
        }

        private void button16_Click(object sender, EventArgs e)
        {
            if (c == true)
            {
                textBox1.Text = "";
                c = false;
            }
            textBox1.Text += "0";
            if (d == "/")                                           //判断如果是除法  除数不能为0
            {
                textBox1.Clear();
                MessageBox.Show("除数不能为零", "错误提示");         //MessageBox是通知用户的提示框 可以弹出警告语
            }
        }

        private void button4_Click(object sender, EventArgs e)
        {     //加法运算
            c = true;                                               //当点击加法时,c被赋值为true 。
            b = double.Parse(textBox1.Text);                        //b是第二个数(加法时是第二个加数,减法时是减数,除法时是除数)
            d = "+";
        }

        private void button9_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "-";
        }

        private void button14_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "*";
        }

        private void button19_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "/";
        }

        private void button5_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "x2";
        }

        private void button10_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "sqrt";
        }

        private void button15_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "log";
        }

        private void button20_Click(object sender, EventArgs e)
        {
            c = true;
            b = double.Parse(textBox1.Text);
            d = "ln";
        }

        private void button18_Click(object sender, EventArgs e)
        {
            switch (d)                                                          //判断d的符号  也就是d是加减乘除等等的哪一种
            {
                case "+": a = b + Double.Parse(textBox1.Text);                  //a = b(第二次输入的加数,除数,减数)+ Double.Parse(textBox1.Text)  (第一次输入的加数,被除数,被减数)
                    break;
                case "-": a = b - Double.Parse(textBox1.Text);
                    break;
                case "*": a = b * Double.Parse(textBox1.Text);
                    break;
                case "/": a = b / Double.Parse(textBox1.Text);
                    break;
                case "x2": a = b * Double.Parse(textBox1.Text);
                    break;
                case "sqrt": a =  Math.Sqrt(b);
                    break;
                case "log": a = Math.Log(double.Parse(textBox1.Text),b);
                    break;
                case "ln": a = Math.Log(b,Math.E);
                    break;
            }
            textBox1.Text = a + "";
            c = true;
        }
    }
}

在这里插入图片描述

  • 5
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值