您好,登錄后才能下訂單哦!
本篇內容介紹了“C#實現計算器精簡版的代碼怎么寫”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
一、界面設計
1.做一個顯示屏
2.17個按鈕(0-9,±×÷%=,CE)
二、需要實現的功能
1.輸入第一個數字
2.選擇運算類型
3.輸入第二個數字
4.按下等號計算出結果,結果顯示在顯示屏上
三、實現步驟
1.先做界面
a.顯示屏 textbox、listbox、label
b.使用17個button,button上的文本改成對應的數字符號
2.補充:申請兩個int類型變量,第一個num1裝第一個數字
第二個num2裝第二個數字
(1).輸入第一個數字,當點一個數字按鈕,屏幕上顯示一個,之前顯示的數字在前面呆著
a1.添加按鈕的cilck事件
a2.事件觸發,將按鈕代表的數字顯示textbox1的text
(2).當輸入符號的時候,清除屏幕,但是后臺必須記錄好第一個數字
b1.添加符號按鈕的click事件
b2.當點任何一個符號按鈕用一個變量num1裝剛才輸入的textbox1中的數字
(3).輸入第二個數字
c1. 當點任何一個符號按鈕用一個變量num2裝剛才輸入的textbox1中的數字
(4).按下等號按鈕,顯示屏上面的文本改變成兩個數字的運算結果
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 簡單的計算器制作 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //計算窗口加載居中的位置 int left = Screen.PrimaryScreen.Bounds.Width / 2 - this.Width / 2; int top = Screen.PrimaryScreen.Bounds.Height / 2 - this.Height / 2; this.Location = new Point(left,top); //加載的時候獲取焦點 button1.TabIndex = 0; } //當我們輸入完第一個數字之后 在輸入運算符的時候 我們要記下第一個數字num1 //當我們輸入完第二個數字之后 在輸入等號的時候 我們要記下第二個數字num1 double num1 = 0; double num2 = 0; bool iskey = false; //ce private void button1_Click(object sender, EventArgs e) { //設置清空 textBox1.Text = ""; } //1 private void button4_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "1"; } //2 private void button5_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "2"; } //3 private void button6_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "3"; } //4 private void button8_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "4"; } //5 private void button9_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "5"; } //6 private void button10_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "6"; } //7 private void button12_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "7"; } //8 private void button13_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "8"; } //9 private void button14_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "9"; } //0 private void button17_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "9"; } //. private void button16_Click(object sender, EventArgs e) { if (iskey) { textBox1.Text = ""; iskey = false; } textBox1.Text += "."; } //定義一個空的來接收符號 string type=" "; //+ private void button15_Click(object sender, EventArgs e) { if(textBox1.Text != "") { //獲取運算的第一個數字(前一個數字);將字符串類型轉換為int類型(int.parse()) // num1 = int.Parse(textBox1.Text); // num1 = Convert.ToInt32(textBox1.Text); // 第二種轉換方式convert num1 = Convert.ToDouble(textBox1.Text); } type = "+"; // textBox1.Text = ""; iskey = true; } //- private void button3_Click(object sender, EventArgs e) { if(textBox1.Text != ""){ num1 = Convert.ToDouble(textBox1.Text); } type = "-"; // textBox1.Text = ""; iskey = true; } //* private void button7_Click(object sender, EventArgs e) { if(textBox1.Text != "") { num1 = Convert.ToDouble(textBox1.Text); } type = "*"; // textBox1.Text = ""; iskey = true; } //÷ private void button11_Click(object sender, EventArgs e) { if(textBox1.Text != "") { num1 = Convert.ToDouble(textBox1.Text); } type = "/"; //textBox1.Text = ""; iskey = true; } //% private void button18_Click(object sender, EventArgs e) { iskey = true; if (textBox1.Text != "") { num1 = Convert.ToDouble(textBox1.Text); } type = "%"; //textBox1.Text = ""; } //= private void button2_Click(object sender, EventArgs e) { if (iskey) { return; } iskey = true; if(textBox1.Text != "") { num2 = Convert.ToDouble(textBox1.Text); } switch (type) { case "+": //括號里進行計算,計算的結果轉化為string類型,并顯示在屏幕(textbox1)里; textBox1.Text = (num1 + num2).ToString(); break; case "-": textBox1.Text = (num1 - num2).ToString(); break; case "*": textBox1.Text = (num1 * num2).ToString(); break; case "/": textBox1.Text = (num1 / num2).ToString(); break; case "%": textBox1.Text = (num1 % num2).ToString(); break; } } } }
“C#實現計算器精簡版的代碼怎么寫”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。