计算器程序

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

制作简单计算器

要求和目的

●要求:

设计一个的计算器,具有简单的运算功能,能进行两个操作数的“+”、“-”、“*”、“/”

运算。计算器的运行效果如图

●目的:

掌握Label控件的使用方法;

掌握ComboBox控件的使用方法;

掌握Button控件的使用方法;

掌握TextBox控件的使用方法。

●设计步骤

新建一个Visual C# Windows应用程序,依次在界面上拖入五个“Label控件”,分别用于“计算器”、“操作数1”、“操作数2”、“运算符”和“结果”,并设置合适的字体及位置。

拖入三个“TextBox控件”,分别用于“接收操作数”和“显示结果”,其中,显示结果的“TextBox控件”的“ReadOnly属性”设置为“True”,即该文本框为只读。最后拖入一个“Button控件”,用于“计算”功能。计算器界面设计好之后,如图所示。

相关背景知识:

ComboBox 控件

ComboBox 控件又称组合框,在工具箱中的图标为。默认情况下,组合框分两个部分显示:顶部是一个允许输入文本的文本框,下面的列表框则显示列表项。可以认为ComboBox就是文本框与列表框的组合,与文本框和列表框的功能基本一致。dropdownstyle属性

●Simple 始终显示列表

●Dropdown 文本部分可编辑

●Dropdownlist 文本部分不可编辑

Items 属性

若要在combobox控件中添加或删除项,可以在设计器中使用Items属性向列表添加项。

SelectedIndex 属性

编辑框所选列表条目的索引号,列表条目索引号从0开始,如果编辑框未从列表中选择条目,该值为-1

SelectedItem 属性

所选择条目的内容,即下拉列表中选中的字符串,如一个也没选,该值为空。获取或设置选定项。它返回项本身,通常是一个字符串值。

编写代码

1.要求和目的

要求:

编写一段代码,用于实现计算器的功能。在“操作数”填写上两个数字,并选择“运算符”,单击“计算”按钮之后,可以在“结果文本框”中显示计算结果。

目的:

掌握数据类型转换的方法;

掌握条件判断语句的编写方法;

掌握文本框控件属性的设置方法。

●2.设计步骤

(1)双击“计算(Button)”按钮,进入该按钮的单击事件,编写代码。

(2)在编写好代码之后,需要对代码进行测试,在Visual Studio 2010编程环境中,选择菜单“调试”的二级菜单项“启动调试”,将程序运行起来,并进行测试。

编写通用计算器

界面设计如下图:

通用计算器的设计界面如图所示。通用计算器界面中有一个显示操作数和结果的文本框,数字键和操作符键。

编写通用计算器代码

1.首先定义窗体的公共变量。

代码:定义窗体的公共变量

string str, opp, opp1;

double num1, num2, result;

2.编写“数字键”的单击事件,数字键“0-9”的事件都是一个数字键0-9键:(以数字1键的click事件举例,代码如下)

{

if (textBox1.Text != "0")

textBox1.Text = textBox1.Text + "1";

else

textBox1.Text = "1";

}

加、减、乘、除

{

num1 =Convert.ToDouble(textBox1.Text);

textBox1.Text = "";

opp = "+";

}

等号键:

{

if (opp1 != "=")

{

num2 = double.Parse(textBox1.Text);

}

switch (opp)

{

case"+": num1 = num1 + num2;

textBox1.Text = "" + num1.ToString();

break;

case"-": num1 = num1 - num2;

textBox1.Text = "" + num1.ToString();

break;

case"*": num1 = num1 * num2;

textBox1.Text = "" + num1.ToString();

break;

case"/": if (num2 == 0)

{

textBox1.Text = "除数不能为零";

}

else

{

num1 = num1 / num2;

textBox1.Text = "" + num1.ToString();

}

break;

}

}

+/-键:

{

num1 = double.Parse(textBox1.Text);

result = num1 * (-1);

textBox1.Text = result.ToString();

}

小数点键:

{

str = textBox1.Text;

int index = str.IndexOf(".");

if (index == -1) //课本85

{

textBox1.Text = str + ".";

}

}

退格键:

{

if (textBox1.Text != "")

{

str = textBox1.Text;

str = str.Substring(0, str.Length - 1); //课本85 textBox1.Text = str;

}

}

CE键:

{

textBox1.Text = "0";

}

C键:

{

result = num1 = num2 = 0;

str = null;

opp = null;

textBox1.Text = "0";

}

Sqrt键:

{

num1 = double.Parse(textBox1.Text);

result = Math.Sqrt(num1);

textBox1.Text = result.ToString();

}

%键:

{

相关文档
最新文档