c#实现简单计算器
来源:互联网 发布:2017广联达软件多少钱 编辑:程序博客网 时间:2024/06/05 18:31
参考了网上的文章,加以修改
核心代码:
private void btnPoi_Click(object sender, EventArgs e) { if(!pointKey) tb.Text += "."; pointKey = true; } private void btn0_Click(object sender, EventArgs e) { if (newNum) { if (tb.Text[0] != '0' || pointKey) tb.Text += "0"; else tb.Text = "0"; } else { tb.Text = "0"; newNum = true; } }
private void btnAdd_Click(object sender, EventArgs e) { stk.Push(tb.Text); //将第一个运算符前的数据压入stack while(stk.Count>=3) //当运算的数据超过2个时,先把前两个算出后压入stack { decimal y = Convert.ToDecimal(stk.Pop()); char sign = Convert.ToChar(stk.Pop()); decimal x = Convert.ToDecimal(stk.Pop()); switch (sign) { case '+': stk.Push(Convert.ToString(x + y)); break; case '-': stk.Push(Convert.ToString(x - y)); break; case '*': stk.Push(Convert.ToString(x * y)); break; case '/': stk.Push(Convert.ToString(x / y)); break; } } tb.Text = stk.Peek(); //将stack的顶部数据(可能是单一数据,也可能是计算后的数据)取出 stk.Push("+"); reAssignment(); }
private void btnDel_Click(object sender, EventArgs e) { string str = tb.Text; if (str[str.Length - 1] == '.') { if (str.Length != 2) { string before = str.Substring(0, str.Length - 2); tb.Text = before + "."; } else if (str.Length == 2) { tb.Text = "0."; } } else { tb.Text = str.Substring(0, str.Length - 1); } }
private void btnPoi_Click(object sender, EventArgs e) { if(!pointKey) tb.Text += "."; pointKey = true; } private void btn0_Click(object sender, EventArgs e) { if (newNum) { if (tb.Text[0] != '0' || pointKey) tb.Text += "0"; else tb.Text = "0"; } else { tb.Text = "0"; newNum = true; } }
1 0
- c#实现简单计算器
- C#实现计算器(简单计算器)
- C#实现简单计算器功能
- C#实现简单的加减乘除计算器
- C#基础之计算器的简单实现
- C#简单工厂设计模式实现计算器
- C#实现桌面应用程序简单的计算器
- C# WindowForm 三句话实现简单计算器
- C#简单计算器
- 简单计算器C#源代码
- C#计算器简单设计
- C#简单计算器
- c#简单计算器编写
- C#窗体-简单计算器
- vs 05 c# 实现简单的计算器功能
- c#实现科学计算器
- 计算器c#实现
- C#实现计算器代码
- poj1753
- 关于Android基本动画的应用
- C++:数据类型
- 第七章,类和对象
- 第三周项目1、项目2: 顺序表的基本运算、建立“顺序表”算法库
- c#实现简单计算器
- linux常用c函数 进程操作篇 http://blog.chinaunix.net/uid-25906157-id-3136757.html
- 马哥Linux运维笔记---1
- 03-Block的使用场景
- C++11:并发、多线程
- POJ 3013 Big Christmas Tree (spfa)
- Findbugs 缺陷详解与英文代号的对照表
- 中级软件设计师考点大盘点
- 素数定理