C#实现计算器功能

佐芯房rYn 2012-08-02 05:51:28
有些功能实现不了,还有些问题,怎么实现MC,MR,MS,CE,Backspace的功能啊?






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 计算器
{
public partial class Form1 : Form
{
char fh;
double number, temp;



public Form1()
{
InitializeComponent();
}


#region 输入数字


private void button1_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "1";
}

private void button2_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "2";
}

private void button3_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "3";
}

private void button4_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "4";
}

private void button5_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "5";
}

private void button6_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "6";
}

private void button7_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "7";
}

private void button8_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "8";
}

private void button9_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "9";
}

private void button0_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + "0";
}



#endregion


private void button小数点_Click(object sender, EventArgs e)
{
richTextBox1.Text = richTextBox1.Text + ".";
}

private void button正负_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text + "-";
number = double.Parse(richTextBox1.Text);
if (number>0)
{
number = - number;
richTextBox1.Text = (number).ToString();
}
else
{

richTextBox1.Text = (number).ToString();
}
}

private void button百分号_Click(object sender, EventArgs e)
{

number = double.Parse(richTextBox1.Text);
//richTextBox1.Text = richTextBox1.Text + "%";
number = number / 100;
richTextBox1.Text = (number).ToString();

}

private void button根号_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text+ "√";
number = double.Parse(richTextBox1.Text);
number =Math.Sqrt(number);
richTextBox1.Text = number.ToString ();

}
private void button分数_Click(object sender, EventArgs e)
{
number = double.Parse(richTextBox1.Text);
number = 1 / number;
richTextBox1.Text = number.ToString();
}


#region 加减乘除



private void button加_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text + "+";
number = double.Parse(richTextBox1.Text);
fh = '+';
richTextBox1.Text = null;

}

private void button减_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text + "-";
number = double.Parse(richTextBox1.Text);
fh = '-';
richTextBox1.Text = null;
}

private void button乘_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text+ "×";
number = double.Parse(richTextBox1.Text);
fh = '*';
richTextBox1.Text = null;

}

private void button除_Click(object sender, EventArgs e)
{
//richTextBox1.Text = richTextBox1.Text + "÷";
number = double.Parse(richTextBox1.Text);
fh = '/';
richTextBox1.Text = null;
}


#endregion


private void button等_Click(object sender, EventArgs e)
{
temp = double.Parse(richTextBox1.Text);
switch (fh)
{
case '+':
number += temp;
break;
case '-':
number -= temp;
break;
case '*':
number *= temp;
break;
case '/':
number /= temp;
break;

}
richTextBox1.Text = number.ToString();

}


private void button1C_Click(object sender, EventArgs e)
{
fh = ' ';
number = 0;
temp = 0;
richTextBox1.Text = null;
}

private void buttonCE_Click(object sender, EventArgs e)
{

}

private void button撤销_Click(object sender, EventArgs e)
{
this.richTextBox1.Undo();
}
}
}
...全文
197 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
Z小染 2013-12-12
  • 打赏
  • 举报
回复
恭喜发财,红包拿来。。。

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧