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 Lab07_1 { public partial class form1 : Form { double a = 0; double b = 0; bool c = false; string d; public form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "1"; } private void textBox1_TextChanged(object sender, EventArgs e) { } private void button5_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "5"; } private void button13_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "0"; if (d == "/") { textBox1.Clear(); MessageBox.Show("除数不能为零", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } } private void button10_Click(object sender, EventArgs e) { c = true; b = double.Parse(textBox1.Text); d = "-"; } private void 雨轩计算机_Load(object sender, EventArgs e) { } private void button2_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "2"; } private void button7_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "7"; } private void button8_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "8"; } private void button9_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "9"; } private void button4_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "4"; } private void button6_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "6"; } private void button3_Click(object sender, EventArgs e) { if (c == true) { textBox1.Text = ""; c = false; } textBox1.Text += "3"; } private void button14_Click(object sender, EventArgs e) { textBox1.Text = ""; } private void button15_Click(object sender, EventArgs e) { c = true; b = double.Parse(textBox1.Text); d = "+"; } private void button11_Click(object sender, EventArgs e) { c = true; b = double.Parse(textBox1.Text); d = "*"; } private void button12_Click(object sender, EventArgs e) { c = true; b = double.Parse(textBox1.Text); d = "/"; } private void button16_Click(object sender, EventArgs e) { switch (d) { 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 "/": a = b / double.Parse(textBox1.Text); break; case "平方": a = b * b; break; case "开方": a =Math.Sqrt(b); break; case "log": a = Math.Log10(b); break; case "ln": a = Math.Log(b); break; } textBox1.Text = a + ""; c = true; } private void button20_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { c = true; b = double.Parse(textBox1.Text); d = "ln"; } } private void button17_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { c = true; b = double.Parse(textBox1.Text); d = "平方"; } } private void button18_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { c = true; b = double.Parse(textBox1.Text); d = "开方"; } } private void button19_Click(object sender, EventArgs e) { if (textBox1.Text == "") { MessageBox.Show("请先输入值再计算!", "错误提示", MessageBoxButtons.OK, MessageBoxIcon.Warning); } else { c = true; b = double.Parse(textBox1.Text); d = "log"; } } } }
界面演示:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!