C#计算器 实验报告.docx
《C#计算器 实验报告.docx》由会员分享,可在线阅读,更多相关《C#计算器 实验报告.docx(16页珍藏版)》请在冰点文库上搜索。
![C#计算器 实验报告.docx](https://file1.bingdoc.com/fileroot1/2023-8/14/d8fcbb98-3566-4b0e-8f11-bfbfbfa51587/d8fcbb98-3566-4b0e-8f11-bfbfbfa515871.gif)
C#计算器实验报告
《C#》程序报告
专业:
软件工程
班级:
1201班
学号:
姓名:
***************
完成日期:
2014年09月20日
实验1C#面向对象
【实验目的】
⏹理解并掌握C#面向对象中方法的参数类型;
⏹理解并掌握C#语言中基于委托和事件的自动响应机制。
【实验环境】
Windows2003+VisualStudio2005(或更高版本)
【实验内容】
1.计算器
【实验结果】
单击“1”“+”“6”
单击“=”
单击“*”和“7”
单击“-”和“9”
再单击“/”和"5"
单击"="
单击“C”
单击“4”“5”“%”“+”
单击“5”“1/x”
单击“CE”
单击“6”“x²”
单击“←”
单击“√”
单击“-”“2”
单击“=”
【实验核心代码】
usingSystem;
usingSystem.Collections.Generic;
usingSystem.ComponentModel;
usingSystem.Data;
usingSystem.Drawing;
usingSystem.Linq;
usingSystem.Text;
usingSystem.Windows.Forms;
namespaceWindowsFormsApplication1
{
publicpartialclassForm1:
Form
{
publicForm1()
{
InitializeComponent();
textBox1.Text="";
}
privateboolflag=false;
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(textBox1.Text.EndsWith("")&&textBox1.Text.Length>1)
textBox1.Text=textBox1.Text.Substring(0,textBox1.Text.Length-3);
else
textBox1.Text=textBox1.Text.Substring(0,textBox1.Text.Length-1);
}
privatevoidbutton2_Click(objectsender,EventArgse)
{
unaryoperators
(2);
}
privatevoidbutton3_Click(objectsender,EventArgse)
{
textBox1.Text="";
flag=false;
}
privatevoidbutton4_Click(objectsender,EventArgse)
{
unaryoperators(4);
}
privatevoidbutton5_Click(objectsender,EventArgse)
{
unaryoperators(5);
}
privatevoidbutton6_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton7_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton8_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton10_Click(objectsender,EventArgse)
{
binocularoperators(sender);
}
privatevoidbutton9_Click(objectsender,EventArgse)
{
textBox1.Text=textBox1.Text.Substring(0,textBox1.Text.LastIndexOf(""));
textBox1.Text+="0";
}
privatevoidbutton11_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton12_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton13_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton14_Click(objectsender,EventArgse)
{
binocularoperators(sender);
}
privatevoidbutton15_Click(objectsender,EventArgse)
{
unaryoperators(15);
}
privatevoidbutton16_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton17_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton18_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton19_Click(objectsender,EventArgse)
{
binocularoperators(sender);
}
privatevoidbutton20_Click(objectsender,EventArgse)
{
Buttonbtn=(Button)sender;
jscript();
}
privatevoidbutton21_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton22_Click(objectsender,EventArgse)
{
number(sender);
}
privatevoidbutton23_Click(objectsender,EventArgse)
{
binocularoperators(sender);
}
privatevoidnumber(objectsender)
{
if(textBox1.Text.EndsWith("0"))
textBox1.Text=""+textBox1.Text.Substring(0,textBox1.Text.Length-1);
if(flag)
{
flag=false;
textBox1.Text="";
Buttonbtn=(Button)sender;
textBox1.Text+=btn.Text;
}
else
{
Buttonbtn=(Button)sender;
textBox1.Text+=btn.Text;
}
}
privatevoidbinocularoperators(objectsender)
{
Buttonbtn=(Button)sender;
if(!
flag)
jscript();
textBox1.Text=textBox1.Text+""+btn.Text+"";
flag=false;
}
privatevoidunaryoperators(inti)
{
stringtemp=textBox1.Text.Substring(textBox1.Text.LastIndexOf(""));
textBox1.Text=textBox1.Text.Substring(0,textBox1.Text.LastIndexOf(""));
doubletempd=0;
switch(i)
{
case15:
tempd=1/Convert.ToDouble(temp);break;
case2:
tempd=Convert.ToDouble(temp)/100;break;
case4:
tempd=tempd=Convert.ToDouble(temp)*Convert.ToDouble(temp);break;
case5:
tempd=tempd=Math.Sqrt(Convert.ToDouble(temp));break;
}
textBox1.Text+=""+tempd;
}
privatevoidjscript()
{
MSScriptControl.ScriptControlsc=newMSScriptControl.ScriptControl();
sc.Language="JavaScript";
textBox1.Text=""+sc.Eval(textBox1.Text);
flag=true;
}
}
}