net程序设计实验指导书

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

编程

实验指导书

李瑞改

东北林业大学信息与计算机工程学院计算机科学与技术专业

实验一:C#编程基础

1.实验目的:

(1)掌握Visual Studio 2005集成开发环境的安装;熟悉控制台程序和Windows桌面应用程序的设计过程。

(2)了解c#的基本语法和结构。熟悉各种数据类型的声明、实例化和赋值方法。初步掌握结构体、枚举型、数组、string等数据类型的使用及其转换方法,掌握选择结构和循环结构程序设计。通过该实验,对C#语言有初步的了解。

2.实验仪器

Windows操作系统,Microsoft Visual Studio .NET 2005。

3.实验内容:

(1)在VS中编写一个控制台应用程序,要求用户在控制台输入自己的名字,然后输出“Welcome To C# World,用户名!”。

(2)编写一个控制台应用程序,要求实现用户输入一个字符,判断字符是数字、大写子母、小写子母还是其他字符。

(3)编写一个程序求S=a+aa+aaa+…+aa…a(n个a),其中a是一个数字。例如:2+22+222+2222+22222(此时n=5),注意,a 的值和n的值都由用户输入。

(4)编写一个桌面应用程序,实现(3)题,要求窗体上有两个文本框以便于用户输入a和n的值,最终把计算结果显示在窗体上。

(5)编写程序求出所有的“水仙花数”,是指一个三位数,其各位数字的立方和恰好等于该数本身。例如:153=1*1*1+5*5*5+3*3*3,所以153是“水仙花”;

(6)10个同学排成一个首尾相连的圈,先给每位同学从1到10编号,然后依次报数(1,2,3),报到3的同学退出,至到只剩1个同学为止,请求出最后剩下的这个同学的编号是多少。

实验二:C#面向对象程序设计

1.实验目的:

(1)掌握C#语言中参数传递的四种方式。

(2)掌握C#语言定义类的方法。

(3)掌握类的各种成员(字段,属性,方法,索引器)的定义方法。

(4)掌握派生类的设计方法。

(5)掌握虚拟方法(属性)和重写方法(属性)的设计方法。

(6)掌握将基类对象引用到派生类实例上的方法,理解base关键字的使用方法。

(7)理解this关键字的使用方法。

(8)理解运行时多态的含义。

2. 实验仪器

Windows操作系统,Microsoft Visual Studio .NET 2005。

3.实验内容:

(1)实现一个包含类属性方法的简单加法程序,并能显示结果。

(2)实现一个Person类,要求:属性包含姓名、年龄、身份证号、工作、工资等,并显示各属性的值。

(3)编写一个涉及参数传递的程序,要求在程序中用到值参数、引用参数、输出参数及参数数组,并比较它们的不同之处。

程序功能要求:程序首先给整型变量x 和y 赋初值3,5,然后使用传值调用方式调用方法对x 和y 做乘方并及输出x 和y 的乘方值,最后输出x和y的值。再将此方法给为对象调用加ref修饰查看输出结果差异。再设置一个out参数z记录x*y的值。

(4)类的继承和基类构造方法的应用

编写一个程序计算出球、圆柱和圆锥的表面积和体积。要求:

定义一个基类圆,至少含有一个数据成员半径;定义基类的派生类球、圆柱、圆锥,都含有求体积函数,可以都在构造函数中实现,也可以将求体积和输出写在一个函数中,或者写在两个函数中,请比较使用。

定义主函数,求球、圆柱、圆锥的和体积。

(5)类的继承和构造函数的灵活应用

程序功能要求如下:

编写一个学生和教师数据输入和显示程序,学生数据有编号、姓名、专业、班级和成绩,成绩放到一个数组中,教师数据有编号、姓名、职称、部门和教授课程(课程放到一个数组中)。要求将编号、姓名输入和显示设计成一个类person,并作为学生数据操作类student和教师类数据操作类teacher的基类。在设计过程中要求体现类的多态性,要求运用base和this关键字体现其用途。

提示:在使用this作为方法的参数时,可以采用这一实例:在教师类中有一个方法,显示教师的详细信息,但是需要接收一个student类型参数,判断这个学生是不是教师的学生,比如要求学生的学号以2004开头,如果满足条件,显示信息。这样在student 类中编写一个方法,显示任课教师的基本信息,这时需要将自身作为一个参数,调用teacher类中的显示信息的方法。

(6)多态程序练习:功能要求如下

基类shape 类是一个表示形状的抽象类,area( )为求图形面积的函数。请从shape 类派生三角形类(triangle)、圆类(circles)、并给出具体的求面积函数,并在主函数中多态地实现调用。

3.思考题

(1)如果调用一个方法之后想“带回”多个值,应该都有什么方法?

(2)方法的参数传递有哪些方式?区别时什么?

(3)什么是虚拟方法、重写方法?

(4)如何体会运行时多态,与编译时多态相比有何区别?

(5)基类对象和派生类对象之间是否自由地强制转换?

实验三:.NET常用对象的使用

1.实验目的:

(1)熟练掌握并灵活运用.NET Framework提供的类库中常用的对象。

(2)掌握DateTime、Color、Point、Size、Rectangle结构的方法。

(3)掌握获取随机数和系统时间的方法。

(4)掌握ArrayList、Hashtable类的用法及其与数组的异同点。

2. 实验仪器

Windows操作系统,Microsoft Visual Studio .NET 2005。

3.实验内容:

(1)编写一个用随机数合成颜色的程序;

(2)已知两个直角边长,编程计算此直角三角形的斜边边长。

(3)定义一个时间类,并对其进行测试。要求实现以下工作:

①定义私有的字段,包括年,月,日,小时,分和秒。

②为私有的字段定义对应的属性。

③定义构造方法,缺省的构造方法(函数)和带参数的构造方法。缺省构造

函数的各个字段的取值可以取系统的当前时间,方法是DateTime.Now。

④定义普通的方法,功能是对时间进行设置。

⑤重写ToString方法,将时间类的对象以字符串的形式返回。

⑥具体的实现方式和功能可以根据具体情况灵活实现。

(4)编写一个应用程序模拟抛硬币的过程,用户输入数字1时,开始抛硬币,并显示结果;输入2 时,显示硬币每面出现的次数,以及出现的概率;输入0时,结束应用程序。(5)使用ArrayList实现学生对象信息的添加、删除(指定学号)和查询(所有)学生对象信息如:

学号姓名成绩年龄

2009001 张三72 18

2009002 李四88 19

相关文档
最新文档