using System;
using System.Collections.Generic;
using
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace calculator
{
public partial class Form1 : Form
{
double memoryValue;//存储的值
string oper;//运算符号
double inputValue;//正在输入的值
public Form1()
{
InitializeComponent();
}
//1,2,3,4,5,6,7,8,9点击
//在原来的显示后面附加所点击的数字
void numberButton_Click(object sender,EventArgs e)
{
txtDisplay.Text+=
((Button)sender).Text;
}
//0,00点击
//如果还没有显示,则什么也不做
//如果有显示,显示的是0,后面没有小数点,则什么也不做;否则在后面显示0或00
void zeroButton_Click(object sender, EventArgs e)
{
if (txtDisplay.Text == "")
{
return;
}
else
{
if ((Convert.ToDouble(txtDisplay.Text) == 0) && (txtDisplay.Text.IndexOf('.') < 0))
return;
else
txtDisplay.Text += ((Button)sender).Text;
}
}
//根据oper,计算d1和d2的运算结果
double cal(string oper, double d1, double d2)
{
double result;
switch (oper)
{
case "+":
result = d1 + d2;
break;
case "-":
result = d1 - d2;
break;
case "*":
result = d1 * d2;
break;
case "/":
result = d1 / d2;
break;
default:
result = d1;
break;
}
return result;
}
private void Form1_Load(object sender, EventArgs e)
{
}
//小数点点击
//如果显示屏上什么也没有,则显示0.
//否则如果有数据,但数据中没有小数点,则附加一个小数点
//否则什么也不做
private void btnDot_Click(object sender, EventArgs e)
{
if (txtDisplay.Text == "")
{
txtDisplay.Text = "0.";
}
else if (txtDisplay.Text.IndexOf('.') < 0)
{
txtDisplay.Text += ".";
}
else
return;
}
//+,-,*,/运算符点击,记住数字和运算符,清空显示屏品
void operButton_Click(object sender, EventArgs e)
{
memoryValue = Convert.ToDouble(txtDisplay.Text);
oper = ((Button)sender).Text;
txtDisplay.Text = "";
}
//等于号点击
//取出正在输入的值,运算符号,存储的值,计算出结果,
//将结果显示出来,并将结果存储
//作废运算符
private void btnEqual_Click(object sender, EventArgs e)
{
inputValue = Convert.ToDouble(txtDisplay.Text);
double result = cal(oper, memoryValue, inputValue);
txtDisplay.Text = result.ToString();
memoryValue = result;
oper = "";
}
//C按钮清空
private void btnClean_Click(object sender, EventArgs e)
{
memoryValue = 0.0;
inputValue = 0.0;
txtDisplay.Text = "";
}
}
}
需要添加什么才能运行!+-*/