C#如何实现简易计算器小功能
发表于:2025-11-15 作者:千家信息网编辑
千家信息网最后更新 2025年11月15日,这篇文章主要介绍C#如何实现简易计算器小功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!具体内容如下简易的登陆界面。具有幻灯片效果。(picturebox time控件)计算
千家信息网最后更新 2025年11月15日C#如何实现简易计算器小功能
这篇文章主要介绍C#如何实现简易计算器小功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
具体内容如下
简易的登陆界面。
具有幻灯片效果。(picturebox time控件)
计算器支持多位数,小数,括号的运算。
音乐是一个练习用的小控件(Listbox),可以选择指定的歌曲播放,直接忽略掉吧。
建立winform窗体
数字和运算符都为button,输入和输出的为textbox
基本代码
在所有button控件的click事件均为加上所对应的文本。
例如:数字1所对应的button就为
textBox1.Text += '1';
运算符同理
textBox1.Text += '*';
核心代码
核心代码均在‘=’的click的事件中
Stackvs = new Stack ();//运算符栈Stack vvs = new Stack ();//操作符栈 string a = textBox1.Text + '='; string b = ""; vvs.Push('='); for (int i = 0; i < a.Length; i++) { if (a[i] >= '0' && a[i] <= '9'||a[i]=='.') { b += a[i]; } else if (a[i] == '=') { if (b != "") vs.Push(Convert.ToDouble(b)); while (vvs.Peek() != '=') { char t = vvs.Pop(); double d = vs.Pop(); if (vs.Count() != 0) { double j = vs.Pop(); vs.Push(Jisuan(d, t, j)); } else { MessageBox.Show("你输入的有问题"); textBox1.Text = ""; } } } else { if (b != "") vs.Push(Convert.ToDouble(b)); switch (Bijiao(vvs.Peek(), a[i])) { case '>': while (vvs.Count != 1 && vvs.Peek() != '(') { char th = vvs.Pop(); double f = vs.Pop(); double g = vs.Pop(); vs.Push(Jisuan(f, th, g)); } if (vvs.Peek() == '(' && a[i] == ')') { vvs.Pop(); } else { vvs.Push(a[i]); } break; case '<': vvs.Push(a[i]); break; case '=': while (vvs.Peek() != '=') { char th = vvs.Pop(); double f = vs.Pop(); double g = vs.Pop(); vs.Push(Jisuan(f, th, g)); } break; } b = ""; } } textBox1.Text = ""; if(vs.Count()!=0) { textBox1.Text = vs.Peek().ToString(); } }
所用到的方法(函数)
public double Jisuan(double c, char t, double a)//用来计算的方法 { switch (t) { case '+': return a + c; case '-': return a - c; case '*': return a * c; case '/': if (c == 0) { MessageBox.Show("0不能作为被除数"); return 0; } else return a / c; case '%': return a % c; default: return 0; } } char Bijiao(char theta1, char theta2)//比较运算符优先级的方法 { if ((theta1 == '(' && theta2 == ')') || (theta1 == '#' && theta2 == '#')) { return '='; } else if (theta1 == '(' || theta1 == '#' || theta2 == '(' || (theta1 == '+' || theta1 == '-') && (theta2 == '*' || theta2 == '/')) { return '<'; } else return '>'; }为了使计算器更加美观,可以添加picturebox控件等等。
以上是"C#如何实现简易计算器小功能"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
运算
计算器
控件
运算符
简易
代码
内容
方法
功能
C#
事件
数字
核心
篇文章
美观
习用
价值
优先级
位数
兴趣
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库服务器要显示器
餐饮数据库
华为存储服务器认证
金蝶k3到数据库
眉州服务器
品牌的即时通讯软件开发
快速引入表格数据库
北京可可网络技术公司
深圳鸿都网络技术有限公司
服务器如何安全关机
群晖服务器忘记管理密码
沙河服务器
茶陵网络安全
网络安全研究生要求
云冈区有口碑的网络安全创新服务
响应式网站用什么软件开发的
中国网络安全专业学校
腾讯网页游戏服务器一年多少钱
乐意学ai智能教育软件开发
创建数据库mydb的语句是
中国移动各种数据库
中学网络安全手抄报
rman还原数据库详细步骤
附近人功能软件开发
数据库索引建立 查找语句
BT盒子服务器怎么连接
多服务器管理有什么用
贵州服务器散热器加工虚拟主机
神通数据库在哪打印dbms结果
基因共表达调控网络数据库