好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

C#实现计算器窗体程序

本文实例为大家分享了C#实现计算器窗体程序的具体代码,供大家参考,具体内容如下

功能设计

1、计算器中,添加 0-9 共十个数字键。

2、计算器中,增添 加、减、乘、除、等于五个功能键。

3、计算器中,增加四个功能键:x2,sqrt,log, ln 四个键,分别计算求平方,开方。

实现代码

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 test3_1 { ? ? public partial class Form1 : Form ? ? { ? ? ? ? double result = 0; ? ? ? ? ? ? ?//存储计算结果 ? ? ? ? double number = 0; ? ? ? ? ? ? ?//存储输入的数字 ? ? ? ? bool exist_value = false; ? ? ? //判断文本框中是否有值 ? ? ? ? string operation; ? ? ? ? ? ? ? //存储输入的运算符 ? ? ? ? /* ? ? ? ? ?* 初始化 ? ? ? ? ?*/ ? ? ? ? public Form1() ? ? ? ? { ? ? ? ? ? ? InitializeComponent(); ? ? ? ? } ? ? ? ? /* ? ? ? ? ?* 数字键触发事件实现 ? ? ? ? ?*/ ? ? ? ? private void Seven_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "7"; ? ? ? ? } ? ? ? ? private void Eight_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "8"; ? ? ? ? } ? ? ? ? private void Nine_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "9"; ? ? ? ? } ? ? ? ? private void Four_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "4"; ? ? ? ? } ? ? ? ? private void Five_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "5"; ? ? ? ? } ? ? ? ? private void Six_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "6"; ? ? ? ? } ? ? ? ? private void One_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "1"; ? ? ? ? } ? ? ? ? private void Two_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "2"; ? ? ? ? } ? ? ? ? private void Three_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "3"; ? ? ? ? } ? ? ? ? private void Zero_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (exist_value == true) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? ? ? ? ? exist_value = false; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text += "0"; ? ? ? ? } ? ? ? ? /* ? ? ? ? ?* 功能键触发事件 ? ? ? ? ?*/ ? ? ? ? private void Add_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "+"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Sub_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "-"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Mul_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "*"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Div_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "/"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Squ_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "x^2"; ? ? ? ? ? ? } ? ? ? ? ? ? ? ? ? ? ? ? } ? ? ? ? private void Sqrt_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "sqrt"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Log_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "log"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Ln_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? if (textBox1.Text == "") ? ? ? ? ? ? { ? ? ? ? ? ? ? ? MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? } ? ? ? ? ? ? else ? ? ? ? ? ? { ? ? ? ? ? ? ? ? exist_value = true; ? ? ? ? ? ? ? ? number = double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? operation = "ln"; ? ? ? ? ? ? } ? ? ? ? } ? ? ? ? private void Del_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? textBox1.Text = ""; ? ? ? ? } ? ? ? ? private void Equ_Click(object sender, EventArgs e) ? ? ? ? { ? ? ? ? ? ? switch (operation) ? ? ? ? ? ? { ? ? ? ? ? ? ? ? case "+": result = number + double.Parse(textBox1.Text); break; ? ? ? ? ? ? ? ? case "-": result = number - double.Parse(textBox1.Text); break; ? ? ? ? ? ? ? ? case "*": result = number * double.Parse(textBox1.Text); break; ? ? ? ? ? ? ? ? case "/": ? ? ? ? ? ? ? ? ? ? { ? ? ? ? ? ? ? ? ? ? ? ? double temp=double.Parse(textBox1.Text); ? ? ? ? ? ? ? ? ? ? ? ? if (temp != 0) ? ? ? ? ? ? ? ? ? ? ? ? ? ? result = number / temp; ? ? ? ? ? ? ? ? ? ? ? ? else ? ? ? ? ? ? ? ? ? ? ? ? ? ? MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); ? ? ? ? ? ? ? ? ? ? ? ? break; ? ? ? ? ? ? ? ? ? ? } ? ? ? ? ? ? ? ? case "x^2": result = number * number; break; ? ? ? ? ? ? ? ? case "sqrt": result = Math.Sqrt(number); break; ? ? ? ? ? ? ? ? case "log": result = Math.Log10(number); break; ? ? ? ? ? ? ? ? case "ln": result = Math.Log(number); break; ? ? ? ? ? ? } ? ? ? ? ? ? textBox1.Text = result + ""; ? ? ? ? ? ? exist_value = true; ? ? ? ? } ? ? } }

界面设计

运行结果

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

查看更多关于C#实现计算器窗体程序的详细内容...

  阅读:52次