在学完了C#的方法和数据类型之后,写了一个简易的计算器的界面。本次界面具备加减乘除求余等五项运算。不过存在一点缺陷就是无法判断输入数据的类型,是整数还是小数,由于目前所学知识有限,等学到以后再进行完善。

本设计源代码如下:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;

namespace MathsOperators
{
     /// <summary>
     /// MainWindow.xaml 的交互逻辑
     /// </summary>
     public partial class MainWindow : Window
     {
         int OperandFlag=0;
         public MainWindow()
         {
             InitializeComponent();
         }

private void Quit_Click(object sender, RoutedEventArgs e)
         {
             Close();//关闭WPF窗口
         }
         /*编写加法的方法*/
         private void AddStractValue()
         {
             int Left = int.Parse(LeftNum.Text);
             int Right = int.Parse(RightNum.Text);
             int ShowResult = Left + Right;
             Expresssion.Text ="("+ Left+")" + "+" +"("+ Right+")";
             Result.Text = ShowResult.ToString();
         }
         /*编写减法的方法*/
         private void SubStractValue()
         {
             int Left = int.Parse(LeftNum.Text);
             int Right = int.Parse(RightNum.Text);
             int ShowResult = Left - Right;
             Expresssion.Text = "(" + Left + ")" + "-" + "(" + Right + ")";
             Result.Text = ShowResult.ToString();
         }
               /*编写乘法的方法*/
         private void MultStractValue()
         {
             int Left = int.Parse(LeftNum.Text);
             int Right = int.Parse(RightNum.Text);
             int ShowResult = Left * Right;
             Expresssion.Text = "(" + Left + ")" + "*" + "(" + Right + ")";
             Result.Text = ShowResult.ToString();
         }
         /*编写除法的方法*/
         private void DivStractValue()
         {
             int Left = int.Parse(LeftNum.Text);
             int Right = int.Parse(RightNum.Text);
             float ShowResult = (float)(Left) / Right;
             Expresssion.Text = "(" + Left + ")" + "/" + "(" + Right + ")";
             Result.Text = ShowResult.ToString();
         }
         /*编写求余法的方法*/
         private void RemStractValue()
         {
             int Left = int.Parse(LeftNum.Text);
             int Right = int.Parse(RightNum.Text);
             int ShowResult = Left % Right;
             Expresssion.Text = "(" + Left + ")" + "%" + "(" + Right + ")";
             Result.Text = ShowResult.ToString();
         }
         private void Calculate_Click(object sender, RoutedEventArgs e)
         {
             switch (OperandFlag)
             {
                 case 1: AddStractValue();  break;
                 case 2: SubStractValue();  break;
                 case 3: MultStractValue(); break;
                 case 4: DivStractValue();  break;
                 case 5: RemStractValue();  break;
                 default: break;
             }
           
         }

private void Add_Checked(object sender, RoutedEventArgs e)
         {
             OperandFlag = 1;
         }

private void Sub_Checked(object sender, RoutedEventArgs e)
         {
             OperandFlag = 2;
         }

private void Mult_Checked(object sender, RoutedEventArgs e)
         {
             OperandFlag = 3;
         }

private void Div_Checked(object sender, RoutedEventArgs e)
         {
             OperandFlag = 4;
         }
         private void Remain_Checked(object sender, RoutedEventArgs e)
         {
             OperandFlag = 5;
         }
         private void LeftNum_TextChanged(object sender, TextChangedEventArgs e)
         {

}
     }
}

本设计界面如下:

部分计算如下:

99+12=111;

(99)-(-18)=117

99*(-18)=-1782

99/(-18)=-5.5

99%(-18)=9

C#之简易计算器设计的更多相关文章

  1. C#Windows Form简易计算器实现(上)

    第一次写博客,来分享一个简易计算器的代码.作为一名准程序员,就是要多写代码才能孰能生巧.重视基础知识才能飞的更快更高以及更稳. 代码可能会写的很糟糕,不完美不安全之处希望发现的越多越好 c#编写计算器 ...

  2. 课堂限时训练-简易计算器·mini dc

    课堂限时训练-简易计算器·mini dc 实验题目 采用后缀表达式法,设计一个建议计算器,实现+.-.*./四种运算. 代码实现 码云链接 关键代码部分及结果如下: 实验分析 首先,分析一下后缀表达式 ...

  3. Qt、C++ 简易计算器

    Qt.C++实现简易计算器: 以下内容是我实现这个简易计算器整个过程,其中包括我对如何实现这个功能的思考.中途遇到的问题.走过的弯路 整个实现从易到难,计算器功能从简单到复杂,最开始设计的整个实现步骤 ...

  4. 自制c#简易计算器

    这是一个课堂作业,我觉得作为一个简易的计算器不需要态度复杂的东西,可能还有一些bug,有空再慢慢加强. using System;using System.Collections.Generic;us ...

  5. 剖析简易计算器带你入门微信小程序开发

    写在前面,但是重点在后面 这是教程,也不是教程. 可以先看Demo的操作动图,看看是个什么玩意儿,GitHub地址(https://github.com/dunizb/wxapp-sCalc) 自从微 ...

  6. PHP学习笔记02——简易计算器

    <!DOCTYPE html> <html> <head> <title>PHP简易计算器</title> </head> &l ...

  7. JavaScript之简易计算器

    <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8&quo ...

  8. 菜鸟学习Struts——简易计算器

    这是学习Struts的一个简单的例子文件结构如下: 1.配置Struts环境 2.新建input.jsp,success.jsp,error.jsp input.jsp代码如下: <%@ pag ...

  9. Python之实现一个简易计算器

    自己动手写计算器 一.功能分析 用户输入一个类似这样 3*( 4+ 50 )-(( 100 + 40 )*5/2- 3*2* 2/4+9)*((( 3 + 4)-4)-4) 这样的表达式,假设表达式里 ...

随机推荐

  1. 让UI设计师崩溃的瞬间,你经历过哪些?

    隔行如隔山,这句话人人耳熟能详,但其实隔行并不可怕,大家各谋其事,各尽其职,倒也互不打扰,真正可怕的是,是内行还要受外行指点江山,而最难的部分,便是那沟通.流畅的沟通,和声细语,是有如时雨之化者:无效 ...

  2. Ubuntu上搭建Hadoop环境(单机模式+伪分布模式) (转载)

    Hadoop在处理海量数据分析方面具有独天优势.今天花了在自己的Linux上搭建了伪分布模式,期间经历很多曲折,现在将经验总结如下. 首先,了解Hadoop的三种安装模式: 1. 单机模式. 单机模式 ...

  3. 【WebService】使用CXF开发WebService(四)

    CXF简介 Apache CXF = Celtix + XFire,开始叫 Apache CeltiXfire,后来更名为 Apache CXF 了,以下简称为 CXF.CXF 继承了 Celtix ...

  4. 可以用WebRTC来做视频直播吗?

    https://www.zhihu.com/question/25497090   作者:韦易笑链接:https://www.zhihu.com/question/25497090/answer/72 ...

  5. 查看tomcat运行日志

    1.先到tomcat的logs目录下我这边是:/usr/local/apache-tomcat-7.0.73/logs 2.tail -f catalina.out 3.这样,前端有请求时候,就会输出 ...

  6. 字符串方法 split() & replace()

    split() 语法:stringObject.split(separator) 功能:把一个字符串分割成字符串数组 返回值:Array 说明:separator 是必须的,分隔符. var str= ...

  7. 绩效沟通-BEST原则

    BEST原则指在进行绩效/IDP面谈的时候按照以下步骤进行: 案例:小赵经常在制作标书时候犯错误 Behavior description 描述行为 小赵,8月6日,你制作的标书,报价又出现了错误,单 ...

  8. 2018.12.30 洛谷P4238 【模板】多项式求逆

    传送门 多项式求逆模板题. 简单讲讲? 多项式求逆 定义: 对于一个多项式A(x)A(x)A(x),如果存在一个多项式B(x)B(x)B(x),满足B(x)B(x)B(x)的次数小于等于A(x)A(x ...

  9. Java数组的初始化

    1.动态初始化 数据类型 [] 变量名 = new 数据类型 [数组大小]; //数组的动态初始化 int [] arr = new int [3]; 2.静态初始化 数据类型 [] 变量名 = {元 ...

  10. best-case analysis in real-time system

    ECRTS: Exact Best-Case Response Time Analysis of Fixed Priority Scheduled Tasks motivation Real-time ...