最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#實現(xiàn)簡單計算器功能

 更新時間:2018年03月27日 15:13:28   作者:彬菌  
給大家分享用C#寫出一個計算機功能的全部代碼分享,有興趣的朋友可以跟著做一下。

實現(xiàn)效果:

Form1.cs代碼:

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 Cal
{
  public partial class Form1 : Form
  {
    public double num1;
    public int temp = 0;//記錄存儲計算方式
    public Form1()
    {
      InitializeComponent();
    }
    
    private void eq_Click(object sender, EventArgs e)
    {
      switch (temp)
      {
        //加法運算
        case 1:
          try
          {
            result.Text = (num1 + double.Parse(result.Text)).ToString();
          }
          catch (Exception)
          {
            MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
          }
          finally
          {
            temp = 0;
          }
          break;
        //減法運算
        case 2:
          try
          {
            result.Text = (num1 - double.Parse(result.Text)).ToString();
          }
          catch (Exception)
          {
            MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
          }
          finally
          {
            temp = 0;
          }
          break;
        //乘法運算
        case 3:
          try
          {
            result.Text = (num1 * double.Parse(result.Text)).ToString();
          }
          catch (Exception)
          {
            MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
          }
          finally
          {
            temp = 0;
          }
          break;
        //除法運算,討論分母為零的情況
        case 4:
          if (double.Parse(result.Text)==0)
          {
            MessageBox.Show("除數(shù)不能為零", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
            result.ResetText();
          }
          else
          {
            result.Text = (num1 / double.Parse(result.Text)).ToString(); temp = 0;
          }
          break;
        case 5:
          try
          {
            result.Text = (num1 % double.Parse(result.Text)).ToString();
          }
          catch (Exception)
          {
            MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
          }
          finally
          {
            temp = 0;
          }
          break;
      }
    }

    private void empty_Click(object sender, EventArgs e)
    {
      result.Text = "0";
      num1 = 0;
      temp = 0;
      //清除
      //if (result.Text.Length > 0)
      //{
      //  result.Text = result.Text.Substring(0, result.Text.Length - 1);
      //}
    }

    private void Zero_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "0";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "0";
      }
    }

    private void one_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "1";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "1";
      }
    }

    private void two_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "2";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "2";
      }
    }
    private void three_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "3";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "3";
      }
    }

    private void four_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "4";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "4";
      }
    }

    private void five_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "5";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "5";
      }
    }

    private void six_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "6";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "6";
      }
    }

    private void seven_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "7";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "7";
      }
    }

    private void eight_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "8";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "8";
      }
    }

    private void nine_Click(object sender, EventArgs e)
    {
      if (result.Text == "0")
      {
        result.Text = "9";
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + "9";
      }
    }

    private void point_Click(object sender, EventArgs e)
    {
      //小數(shù)點按鍵,初始為空,直接按 . 鍵則顯示為0.多少
      if (result.Text == "")
      {
        result.Text = "0.";
      }
      //如果再次輸入.則返回都輸入的字符后邊并提示信息
      else if (result.Text.IndexOf(".") >= 0)
      {
        MessageBox.Show("已經(jīng)輸入小數(shù)點,無須再次輸入", "提示");
      }
      else
      {
        //前邊有數(shù)字時,則直接在后邊加上.
        result.Text = result.Text + ".";
      }
    }

    private void add_Click(object sender, EventArgs e)
    {
      temp = 1;
      try
      {
        num1 = double.Parse(result.Text);
      }
      catch (Exception)
      {
        MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      }
      finally
      {
        result.Text = "";//隨后讓文本框歸空
      }
    }

    private void mul_Click(object sender, EventArgs e)
    {
      temp = 3;
      try
      {
        num1 = double.Parse(result.Text);
      }
      catch (Exception)
      {
        MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      }
      finally
      {
        result.Text = "";//隨后讓文本框歸空
      }
    }

    private void sub_Click(object sender, EventArgs e)
    {
      temp = 2;
      try
      {
        num1 = double.Parse(result.Text);
      }
      catch(Exception)
      {
        MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      }
      finally
      { 
      result.Text = "";//隨后讓文本框歸空
      }
    }

    private void Button1_Click(object sender, EventArgs e)
    {
      temp = 4;
      try
      {
        num1 = double.Parse(result.Text);
      }
      catch (Exception)
      {
        MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      }
      finally
      {
        result.Text = "";//隨后讓文本框歸空
      }
    }

    private void per_Click(object sender, EventArgs e)
    {
      temp = 5;
      try
      {
        num1 = double.Parse(result.Text);
      }
      catch (Exception)
      {
        MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      }
      finally
      {
        result.Text = "";//隨后讓文本框歸空
      }
    }

    private void opp_Click(object sender, EventArgs e)
    {
      //temp = 6;
      try
        {
         result.Text = (-double.Parse(result.Text)).ToString();
        }
      catch (Exception)
        {
          MessageBox.Show("還沒輸入數(shù)字呢", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        }
      finally
          {
        temp = 0;
          }
    }
    
    private void Form1_Load(object sender, EventArgs e)
    {
      result.Text = "0";
    }

    private void result_TextChanged(object sender, EventArgs e)
    {
      if (result.Text.Length > 18&& result.Text.Length<36)
      {
        result.Font = new Font(result.Font.FontFamily, 15, result.Font.Style);
      }
      if (result.Text.Length > 36&&result.Text.Length<45)
      {
        result.Font = new Font(result.Font.FontFamily, 10, result.Font.Style);
      }
      if (result.Text.Length > 45)
      {
        MessageBox.Show("超出范圍,將要清空了!", "錯誤提示", MessageBoxButtons.OK, MessageBoxIcon.Warning);
        result.ResetText();
        result.Font = new Font(result.Font.FontFamily, 20, result.Font.Style);
      }
    }
  }
}

小編已經(jīng)測試了代碼,大家可以跟著做一下看看,感謝大家對腳本之家的支持。

相關文章

  • c#中判斷類是否繼承于泛型基類

    c#中判斷類是否繼承于泛型基類

    這篇文章主要介紹了c#中判斷類是否繼承于泛型基類,最簡單的辦法肯定是typeof(b).baseType=typeof(a<string>)這樣就可以返回true,但是這種方法時不妥的,下面看看如何解決這個問題呢
    2022-04-04
  • C# 位圖BitArray的使用

    C# 位圖BitArray的使用

    如果我們著重處理一個以位為單位的數(shù)據(jù)時,就可以考慮使用位數(shù)組。本文就介紹了C# 位圖BitArray的使用,感興趣的可以了解一下
    2021-06-06
  • C#10的13個特性

    C#10的13個特性

    本文詳細講解了C#10的13個特性,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-12-12
  • C# 打印網(wǎng)頁不顯示頁眉頁腳的實現(xiàn)方法

    C# 打印網(wǎng)頁不顯示頁眉頁腳的實現(xiàn)方法

    這篇文章主要介紹了C# 打印網(wǎng)頁不顯示頁眉頁腳的實現(xiàn)方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-01-01
  • C# params可變參數(shù)的使用注意詳析

    C# params可變參數(shù)的使用注意詳析

    這篇文章主要給大家介紹了關于C# params可變參數(shù)的使用注意的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用C#具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-07-07
  • C#正方形圖片的繪制方法

    C#正方形圖片的繪制方法

    這篇文章主要為大家詳細介紹了C#正方形圖片的繪制方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • 詳解.NET 4.0中的泛型協(xié)變(covariant)和反變(contravariant)

    詳解.NET 4.0中的泛型協(xié)變(covariant)和反變(contravariant)

    這篇文章主要介紹了詳解.NET 4.0中的泛型協(xié)變(covariant)和反變(contravariant),本文講解了協(xié)變和反變的背景知識、.NET 4.0引入的泛型協(xié)變、反變性、協(xié)變和反變的相互作用等內(nèi)容,需要的朋友可以參考下
    2015-06-06
  • C#?wpf嵌入winform控件的示例詳解

    C#?wpf嵌入winform控件的示例詳解

    wpf的強大界面能力,再加上winform的性能以及靈活性,那基本上什么界面都能夠做的很好,本文我們就來看看如何在C#?wpf中嵌入winform控件吧
    2024-03-03
  • 淺談Java與C#的一些細微差別

    淺談Java與C#的一些細微差別

    說起C#和Java這兩門語言(語法,數(shù)據(jù)類型 等),個人以為,大概有90%以上的相似,甚至可以認為幾乎一樣。但是在工作中,我也發(fā)現(xiàn)了一些細微的差別
    2013-11-11
  • C#第三方日志插件Log4net的配置文件詳解

    C#第三方日志插件Log4net的配置文件詳解

    Log4net是一個穩(wěn)定且功能豐富的日志庫,已經(jīng)存在多年并且被廣泛使用,這篇文章主要為大家詳細介紹了Log4net日志插件的配置文件信息,感興趣的可以了解下
    2024-03-03

最新評論

辉南县| 阳谷县| 安顺市| 满洲里市| 乃东县| 安岳县| 云浮市| 恩平市| 芦溪县| 阿坝| 迁安市| 平远县| 海阳市| 岳普湖县| 原阳县| 庆云县| 松滋市| 蒲城县| 巴林右旗| 吴川市| 贵阳市| 大同市| 罗定市| 信宜市| 张家界市| 桑日县| 沾益县| 蕉岭县| 大悟县| 固镇县| 邯郸县| 西贡区| 南安市| 准格尔旗| 九龙城区| 榆林市| 新建县| 高雄县| 娱乐| 苍山县| 宣城市|