实训一、C#与.NET环境初步实训目的:了解.NETFramework的结构。理解.NETFramework的基本概念了解.NETFramework命名空间了解C#程序的基本结构熟悉VisualStudio.NET的配置熟悉如何创建一个控制台应用程实训内容:编写第一个控制台的输入与输出程序建立第一个Windows窗体应用程序定义一个简单的IP地址结构体实训设备仪器:PC50台,要求:windows7/xp/2000/2003操作系统,配置Vc#2005/2008运行环境,安装SQLServer2000/2005/2008数据库管理系统实训步骤:1:控制台的输入与输出问题在控制台上实现文本的输入与输出。问题说明按照提示输入自己的姓名,程序输出你输入的名字,并欢迎使用C#语言。主要使用Console(控制台)对象的WriteLine和Write方法实现显示;使用ReadLine方法读入字符。分析Main()是应用程序(可执行)的入口点,它必须包含在一个类中,且仅有一个类能使用该标志定义。参考步骤:(1)为解决方案创建一个控制台应用程序的项目“Example_1”。(2)将“Program.cs”类文件重命名为“Welcome.cs”。(3)将以下代码添加到“Welcome.cs”中。usingSystem;//给System名字空间加一个using指令,不再需要规定名字空间,就可以使用它们的方法和属性usingSystem.Collections.Generic;usingSystem.Text;namespaceExample_1{classWelcome{/*这种注释跨越多行*/staticvoidMain(string[]args){//这是单行注释Console.Write(请输入你的姓名:);//Write与WriteLine不同的地方在于它输出时不换行stringstrName=Console.ReadLine();Console.WriteLine({0}+,你好!\n欢迎使用C#语言!,strName);//{0}代替2WriteLine方法的参数表中紧随格式串后的第一个变量}}}(4)选择“生成”→“生成解决方案”选项,以生成此项目。(5)选择“调试”→“开始执行(不调试)”选项来执行此应用程序。此应用程序的输出结果如图1.1所示。图1.1Welcome.cs的输出结果2:建立Windows窗体应用程序问题设计一个窗口,可以将用户输入的两个操作数进行加法计算,并显示计算结果。问题说明首先要新建Windows应用程序类型的项目,创建成功后,可以得到一个名为Form1的空白窗体。可以从左边工具箱中的公共控件组中选择控件往窗体上拖放。在Windows窗体上添加两个文本输入框供用户输入操作数,再添加一个按钮来对输入的操作数进行加法计算,最后将计算结果显示在第三个输入框中。分析VisualStudio.Net使开发图形界面程序简单,把需要的控件从工具箱拖放到Windows窗体上即可。使用VisualStudio.Net可以减少开放人员编写的代码量,使开放人员集中精力解决业务问题。推荐步骤:(1)建立一个Windows应用程序项目,命名为“WinForm”。(2)往Form1窗体上拖放3个Label和TextBox控件和一个Button控件,并对它们相应的Text属性进行修改,效果如图:(3)双击ADD按钮,出现代码编辑界面,把以下代码添加到“Form1.cs”中。usingSystem;3usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Text;usingSystem.Windows.Forms;namespaceWinForm{publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privatevoidbutton1_Click(objectsender,EventArgse){longoper1,oper2,result;//如果操作数为空,显示警告信息if((textBox1.Text==)||(textBox2.Text==)){MessageBox.Show(this,操作数不能为空,提示信息,MessageBoxButtons.OK,MessageBoxIcon.Information);return;}try{//将文本框中的数据(字符串型)转换成long型数据oper1=Convert.ToInt64(textBox1.Text);oper2=Convert.ToInt64(textBox2.Text);result=oper1+oper2;//将和写入结果文本框textBox3.Text=Convert.ToString(result);}catch(Exceptione1){//捕捉异常,例如:若输入字母,在转换成long类型时会引发异常MessageBox.Show(this,e1.Message,警告信息,MessageBoxButtons.OK,MessageBoxIcon.Warning);}}}}(4)选择“生成”→“生成解决方案”选项,以生成此项目。(5)选择“调试”→“开始执行(不调试)”选项来执行此应用程序。此应用程序的输出结果如图1.2所示。4图1.2Form1窗体的运行结果3、一个简单的IP地址结构体问题使用4个byte类型的变量来对IP地址进行存储,并将这4个变量组成定义一个结构体。问题说明struct类型是一种可包含构造函数、常数、字段、方法、属性、索引器、运算符和嵌套类型的值类型。分析此问题要求使用一个结构体来接受和储存IP地址中的4个十进制数。该结构体可通过以下方式声明:IPsampleStruct;在C#中,类与结构体在语义上是不同的,结构是值类型,不需要实例化,而类是引用类型。推荐步骤:(1)为解决方案创建一个控制台应用程序的项目“Example_2”。(2)将“Program.cs”类文件重命名为“SampleStruct.cs”。(3)将以下代码添加到“SampleStruct.cs”中。usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceExample_2{//定义一个IP结构体structIP{publicbyteb1,b2,b3,b4;}classSampleStruct{staticvoidMain(string[]args){IPsampleStruct;sampleStruct.b1=192;sampleStruct.b2=168;sampleStruct.b3=1;sampleStruct.b4=101;Console.Write({0}.{1},sampleStruct.b1,sampleStruct.b2);Console.Write({0}.{1},sampleStruct.b3,sampleStruct.b4);5}}}(4)选择“生成”→“生成解决方案”选项,以生成此项目。(5)选择“调试”→“开始执行(不调试)”选项来执行此应用程序。此应用程序的输出结果如图1.3所示。图1.3SampleStruct.cs的输出结果实验总结根据实验内容和步骤,写出实验体会。实训二、C#基础知识运用实训目的:通过本章的学习,主要把握以下内容:在C#中定义变量和常量使用C#中的基本数据类型理解装箱和拆箱的概念使用C#中的运算符,选择结构和循环结构定义和使用数组,了解结构和枚举熟悉C#中的预处理指令熟悉C#中的字符串处理实训设备仪器:PC50台,要求:windows7/xp/2000/2003操作系统,配置Vc#2005/2008运行环境,安装SQLServer2000/2005/2008数据库管理系统实训内容:编写一个使用枚举和Switchcase选择语句的程序浮点型数组排序编写1到9的乘法口诀表程序实训步骤:1:枚举和Switchcase问题枚举类型的构建和使用;通过Switchcase语句来对符合条件值进行输出。问题说明编写一个Degrees的枚举,然后引用这个枚举。分析在此问题中首先需要定义一组不同类型的学位。为此,可通过以下方式创建枚举。EnumDegrees{Bachelor,//学士Master,//硕士Doctor//博士6}然后,可以使用switch结构,根据传递到此switch结构的枚举成员来决定要显示的信息。参考步骤:(1)为解决方案创建一个控制台应用程序的项目“Example_3”。(2)将“Program.cs”类文件重命名为“EnumDemo.cs”。(3)将以下代码添加到“EnumDemo.cs”中。usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceExample_3{//学位枚举列表enumDegrees{//枚举成员Bachelor,Master,Doctor}///summary///此程序演示枚举和switchcase的用法。////summaryclassEnumDemo{///summary///应用程序的主入口点。////summary[STAThread]staticvoidMain(string[]args){//用switchcase来为相应的case显示信息。switch(Degrees.Master){caseDegrees.Bachelor:Console.WriteLine(你的学位为学士);break;caseDegrees.Master:Console.WriteLine(你的学位为硕士);break;caseDegrees.Doctor:Console.WriteLine(你的学位为博士);break;default:break;}Console.ReadLine();}7}}(4)选择“生成”→“生成解决方案”选项,以生成此项目。(5)选择“调试”→“开始执行(不调试)”选项来执行此应用程序。此应用程序的输出结果如图1.1所示。图1.1EnumDemo.cs的输出结果2:浮点型数组排序问题用户输入6个浮点型数组,程序根据其值的大小,进行排序输出。问题说明编写一个程序来接受用户输入的6个浮点数值,把这些数存放到一个数组里,然后对这些数组里面的值进行排序。分析此问题要求使用一个数组来接受和存储用户输入的6个值。该数组可通过以下方式声明://声明长度为6的数组float[]elements=newfloat[6];用冒泡法对数组进行排序:需要使用一个for循环来接受用户输入的值。再用一个嵌套for循环比较数组中的元素。参考步骤:(1)为解决方案创建一个控制台应用程序的项目“Example_4”。(2)将“Program.cs”类文件重命名为“ArrayDemo.cs”。(3)将以下代码添加到“ArrayDemo.cs”中。usingSystem;usingSystem.Collections.Generic;usingSystem.Text;namespaceExample_4{///summary///此程序演示数组和嵌套for循环的用法。////summaryclassArrayDemo{///summary///应用程序的主入口点。////summary[STAThread]staticvoidMain(string[]args){//声明长度为6的数组float[]elements=newfloat[6];8//计数器变量intindex;//临时变量floattemp;Console.Writ