C#写的简单的计算器.docx

上传人:b****5 文档编号:7186573 上传时间:2023-01-21 格式:DOCX 页数:11 大小:17.04KB
下载 相关 举报
C#写的简单的计算器.docx_第1页
第1页 / 共11页
C#写的简单的计算器.docx_第2页
第2页 / 共11页
C#写的简单的计算器.docx_第3页
第3页 / 共11页
C#写的简单的计算器.docx_第4页
第4页 / 共11页
C#写的简单的计算器.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

C#写的简单的计算器.docx

《C#写的简单的计算器.docx》由会员分享,可在线阅读,更多相关《C#写的简单的计算器.docx(11页珍藏版)》请在冰豆网上搜索。

C#写的简单的计算器.docx

C#写的简单的计算器

 

《C#程序设计》课程设计

 

题目:

普通计算器

专业:

计算机应用技术

学号:

姓名:

指导老师:

完成日期:

20130621

 

目录

1前言2

2需求分析2

2.1要求2

2.2任务2

2.3运行环境2

2.4开发工具2

3编码与实现2

3.1分析2

3.2具体代码实现3

4课程设计总结10

1前言

用C#编写一个程序来进行加、减、乘和除运算,就是一个按输入顺序尽心计算的计算器。

其功能比较单一,只可以进行加减乘除计算。

设计中的体会使我受益匪浅。

2需求分析

2.1要求

(1)用C#语言实现程序设计;

(2)利用button控件和textbox实现程序;

(3)界面友好(良好的人机互交),程序要有部分注释。

2.2任务

(1)定义一个double类型的numble1变量,用来存储每次运算的结果。

并具备计算器的基本功能。

(2)画出所有模块的流程图;

(3)编写代码;

(4)程序分析与调试。

2.3运行环境

(1)windowsXP/windows7系统

(2)MicrosoftVisualStudio2008/MicrosoftVisualStudio2010编译环境

2.4开发工具

C#语言

3编码与实现

3.1分析

设计的基本思想是:

向textbox输入一个string类型的字符串作为第一个数,在点击运输符号位时,将textbox.Text中的string字符串转化成double类型并存储在numble1中,在输入第二个字符串时把textbox.Text清空且该控件代表的字符累加到textbox.Text中;只有在点击运算符号位后才会在点击数字是textbox.Text才会被清空。

在点击运算符号位时,就进行两次输入数的运算,并在textbox.Text中输出结果。

当下一次点击符号位时就进行本次符号的运算。

3.2具体代码实现

usingSystem;

usingSystem.Collections.Generic;

usingSystem.ComponentModel;

usingSystem.Data;

usingSystem.Drawing;

usingSystem.Linq;

usingSystem.Text;

usingSystem.Windows.Forms;

namespace计算器

{

publicpartialclassForm1:

Form

{

publicForm1()

{

InitializeComponent();

}

doublenumble1=0;

doublenumble2=0;

stringsign="";

boolclear=false;

boolclear1=false;

boolpoint=false;

privatevoidForm1_Load(objectsender,EventArgse)//初始化textbox

{

textBox1.Text="0";

}

privatevoidbutton_add_Click(objectsender,EventArgse)//进行上一个运算符号的运算并将运算符号改为加号

{

if(0==numble2)//用于限制只有在等号之后才不进行运算,避免重复运算

{

fork();

}

clear_1();

numble1+=Convert.ToDouble(textBox1.Text);

sign="+";

clear=false;

clear1=true;

numble2=0;

point=false;

textBox1.Text=numble1.ToString();

}

privatevoidbutton_sub_Click(objectsender,EventArgse)//进行上一个运算符号的运算并将运算符号改为减号

{

if(0==numble2)//用于限制只有在等号之后才不进行运算,避免重复运算

{

fork();

}

if(clear1==false)

{

numble1=Convert.ToDouble(textBox1.Text);

clear1=true;

}

sign="-";

clear=false;

point=false;

numble2=0;

//

textBox1.Text=numble1.ToString();

}

privatevoidbutton_mul_Click(objectsender,EventArgse)//进行上一个运算符号的运算并将运算符号改为乘号

{

if(0==numble2)//用于限制只有在等号之后才不进行运算,避免重复运算

{

fork();

}

if(clear1==false)

{

numble1=Convert.ToDouble(textBox1.Text);

clear1=true;

}

sign="*";

clear=false;

point=false;

numble2=0;

textBox1.Text=numble1.ToString();

}

privatevoidbutton_divi_Click(objectsender,EventArgse)//进行上一个运算符号的运算并将运算符号改为除号

{

if(0==numble2)//用于限制只有在等号之后才不进行运算,避免重复运算

{

fork();

}

if(clear1==false)

{

numble1=Convert.ToDouble(textBox1.Text);

clear1=true;

}

sign="/";

clear=false;

point=false;

numble2=0;

textBox1.Text=numble1.ToString();

}

privatevoidbutton_equ_Click(objectsender,EventArgse)//进行运算并输出结果

{

switch(sign)

{

case("+"):

numble1+=Convert.ToDouble(textBox1.Text);

break;

case("-"):

numble1-=Convert.ToDouble(textBox1.Text);

break;

case("*"):

numble1*=Convert.ToDouble(textBox1.Text);

break;

case("/"):

if(0==Convert.ToDouble(textBox1.Text))

{

clear=false;

MessageBox.Show("被除数不可以为零!

请重新输入!

","错误提示",MessageBoxButtons.OK,MessageBoxIcon.Error);

}

else

{

numble1/=Convert.ToDouble(textBox1.Text);

}

break;

default:

break;

}

numble2=1;

clear1=true;

point=false;

textBox1.Text=numble1.ToString();

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

clear_0();

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

}

privatevoidbutton2_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"2";

}

privatevoidbutton3_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"3";

}

privatevoidbutton4_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"4";

}

privatevoidbutton5_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"5";

}

privatevoidbutton6_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"6";

}

privatevoidbutton7_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"7";

}

privatevoidbutton8_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"8";

}

privatevoidbutton9_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"9";

}

privatevoidbutton0_Click(objectsender,EventArgse)

{

clear_0();

textBox1.Text=textBox1.Text+"0";

}

privatevoidbutton_point_Click(objectsender,EventArgse)//限制输入小数点的个数,在同一个字符串中只可以输入一个小数点

{

if(false==point)

{

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

point=true;

clear=true;

}

}

privatevoidbutton10_Click(objectsender,EventArgse)//用于退格,如果在输入过程中输入错误可以用于清除

{

if(1<=textBox1.Text.Length)

textBox1.Text=textBox1.Text.Substring(0,textBox1.Text.Length-1);

}

voidclear_0()//用于在首次计算时清除在textbox.Text中的“0”字符,在显示时就不会显示以0开头的字符串

{

if(clear==false)

{

textBox1.Text="";

clear=true;

}

}

voidclear_1()//用于在点击加减法时,在fork()执行后将textBox1.Text清零后再运算一次,以免重复运算

{

if(clear1==true)

{

textBox1.Text="0";

}

}

privatevoidbutton_clear_Click(objectsender,EventArgse)//用于归零,

{

clear=false;

clear1=false;

point=false;

sign="0";

numble1=0;

textBox1.Text="0";

}

voidfork()//负责运算

{

switch(sign)

{

case("+"):

numble1+=Convert.ToDouble(textBox1.Text);

break;

case("-"):

numble1-=Convert.ToDouble(textBox1.Text);

break;

case("*"):

numble1*=Convert.ToDouble(textBox1.Text);

break;

case("/"):

if(0==Convert.ToDouble(textBox1.Text))

{

clear=false;

MessageBox.Show("被除数不可以为零!

请重新输入!

","错误提示",MessageBoxButtons.OK,MessageBoxIcon.Error);

}

else

{

numble1/=Convert.ToDouble(textBox1.Text);

}

break;

default:

break;

}

}

privatevoidexit_Click(objectsender,EventArgse)//负责退出程序

{

Close();

}

}

}

4课程设计总结

通过此次设计,熟练了对MicrosoftVisualStudio2008/MicrosoftVisualStudio2010的操作,更深一步了解到了C#和C、C++和JAVA语言的差异。

开发前的构思很重要,一个好的构思或习惯,可以为后期编程省去很多的麻烦。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1