VS2010(c#)-实现数字计算器
2014-06-29 22:31
369 查看
先看看代码:
关键代码:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace Calculator { public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void btnAdd_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnSub_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnMul_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnDiv_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void button16_Click(object sender, EventArgs e) { textBox1.Text = ""; } private void button14_Click(object sender, EventArgs e) { Single r; string t = textBox1.Text; int space = t.IndexOf(' '); string s1=t.Substring (0,space); char op=Convert.ToChar (t.Substring (space+1,1)); string s2=t.Substring (space+3); Single arg1=Convert.ToSingle(s1); Single arg2=Convert.ToSingle(s2); switch(op) { case '+': r=arg1+arg2; break; case '-': r=arg1-arg2; break; case '*': r=arg1*arg2; break; case '/': if(arg2==0) {throw new ApplicationException();} else { r=arg1/arg2; break;} break; default:throw new ApplicationException(); } textBox1.Text=r.ToString(); } private void button2_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button3_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button5_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button6_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button7_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button8_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button10_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } private void button11_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text += btn.Text; } } }界面如图所示:
关键代码:
<strong> </strong> private void btnAdd_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnSub_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnMul_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; } private void btnDiv_Click(object sender, EventArgs e) { Button btn = (Button)sender; textBox1.Text = textBox1.Text + " " + btn.Text + " "; }以上程序再处理显示时都事先加了“ ”(空格),方面下面的数据分割提取计算。这种思想方法值得借鉴。
int space = t.IndexOf(' '); string s1=t.Substring (0,space); char op=Convert.ToChar (t.Substring (space+1,1)); string s2=t.Substring (space+3);确定不同数字用空格隔开,用Substring()方法获得,本程序的重要思想方法。
相关文章推荐
- 数据结构之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java)
- C#实现的根据年月日计算星期几的函数(专)
- C#实现的根据年月日计算星期几的函数
- 数据结构中用C#实现"表达式计算"
- C#实现的根据年月日计算星期几的函数
- C#实现的【阿拉伯数字转换成中文大写金额】代码(原创)
- [转载]数据结构中用C#实现"表达式计算"
- 数据结构习作之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java) (技术含量少许)
- 由SAT问题展开说(2)[演化计算c#实现上]
- 数字转换成大写金额(C#实现)
- 数据结构之应用 "栈(Stack)" 实现: 解析算术表达式及计算求值 (C#/Java) (转载)
- 使用C#实现阿拉伯数字到大写中文的转换-第二种方法
- 使用C#实现阿拉伯数字到大写中文的转换-第二种方法
- C#实现的根据年月日计算星期几的函数
- .Net/C#/VB/T-SQL/Java/Script 实现: 将天文数字转换成中文大写 (2000 年前的思路,打劫的,一点儿技术含量都没有)
- 判断一个字符串是否全是数字的多种方法及其性能比较(C#实现)
- (续)用c#实现的数字图象处理----正在更新中!
- C#实现的根据年月日计算星期几的函数
- C#实现的根据年月日计算星期几的函数
- C#根据输入的数字计算 4 位数的标识串!