C#NET程序设计实验报告.docx

上传人:b****3 文档编号:2946462 上传时间:2022-11-16 格式:DOCX 页数:67 大小:609.23KB
下载 相关 举报
C#NET程序设计实验报告.docx_第1页
第1页 / 共67页
C#NET程序设计实验报告.docx_第2页
第2页 / 共67页
C#NET程序设计实验报告.docx_第3页
第3页 / 共67页
C#NET程序设计实验报告.docx_第4页
第4页 / 共67页
C#NET程序设计实验报告.docx_第5页
第5页 / 共67页
点击查看更多>>
下载资源
资源描述

C#NET程序设计实验报告.docx

《C#NET程序设计实验报告.docx》由会员分享,可在线阅读,更多相关《C#NET程序设计实验报告.docx(67页珍藏版)》请在冰豆网上搜索。

C#NET程序设计实验报告.docx

C#NET程序设计实验报告

 

福建农林大学金山学院

 

实验报告

 

课程名称:

.NET程序设计

姓名:

洪绵绵

系:

信息与机电工程系

专业:

计算机科学与技术

年级:

2008

学号:

082231029

指导教师:

林松

职称:

讲师

 

2010年12月29日

实验项目列表

序号

实验项目名称

成绩

指导教师

1

实验一、数组、类、接口与结构(验证性2学时)

林松

2

实验二、委托与事件(验证性2学时)

林松

3

实验三、文件与Windows窗体程序设计(验证性2学时)

林松

4

实验四、数据库操作1(综合性2学时)

林松

5

实验五、数据库操作2(综合性,2学时)

林松

 

福建农林大学金山学院实验报告

系:

信息与机电工程专业:

计算机科学与技术年级:

2008级

姓名:

洪绵绵学号:

082231029实验室号_608计算机号B3

实验时间:

2010.11.26上午一二节指导教师签字:

成绩:

实验一数组、类、接口与结构

一、实验目的和要求

1、了解数组、类、接口和结构的定义、概念。

2、了解结构和类的区别。

3、掌握数组的声明、实例化、初始化和访问。

4、掌握类、接口的声明和使用,结构的声明和调用。

二、实验内容和原理

1、屏幕打印10行杨辉三角,逐行输出,用到Console.Write("{0,5}",A[i,j]);和Console.WriteLine();语句。

2、创建抽象基类Shape和派生类Rectangle,Circle利用多态性实现Area(计算面积)和Show(在屏幕上显示图形名称和面积)抽象方法

3、声明一个接口ICDPlayer,包含4个接口方法:

Play(),Stop(),NextTrack()和PreviousTrack(),以及一个只读属性CurrentTrack创建类CDPlayer实现该接口,模拟CD的播放、停止、下一音轨、上一音轨的操作。

4、声明一个表示平面坐标系中的点的结构体CoOrds,包含字段x,y,以及带2个参数的构造函数。

分别利用三种不同的方法(默认构造函数、有2个参数的构造函数、先声明结构体变量再对其x,y字段赋值),创建3个平面坐标点变量。

求这3个点所构成的三角形面积。

注意判断3个坐标点是否可以构成三角形。

三、实验环境

1、硬件:

PC机

2、软件:

windowsXP、VS2008

四、算法描述及实验步骤

1、

(1)打开记事本,编写代码。

(2)定义一个二维数组,杨辉三角只需处理(赋值和输出)下三角各元素即可。

所有下三角各元素初始化为1。

(3)杨辉三角下三角各元素满足如下条件:

第一列及对角线上的元素均为1;其余每

个元素等于它上一行同一列元素与上一行前一列元素之和,即:

A[i,j]=A[i-l,j]+A[j-1]。

(4)屏幕打印数组中的三角中各元素,可逐行输出(Console.Write("{0,5}",A[i,j]);Console.WriteLine();)

(5)保存记事本文件为exp1_1.cs

(6)在命令行界面(桌面开始程序vs2008vstoolsvs2008命令提示)编译源文件(csc…\exp1_1.cs)、运行(exp1_1.exe)并查看结果。

2、

(1)打开vs2008,创建新项目(控制台应用程序),并命名为exp1_2。

(2)定义基类Shape,其中含有:

一个保护的string类型字段name;带一个参数的构造方法为name字段赋值;两个抽象方法:

Area()(返回一个双精度的值)和Show()(无返回值)。

(3)定义派生类Rectangle,其中含有:

两个私有的双精度类型的字段width,heigh;带三个参数的构造方法为name,width和heigh赋值,其中为name赋值调用父类的构造方法;实现方法Area()(返回举行的面积)和Show()(无返回值,在屏幕上显示图形名称(矩形)和面积)。

(4)定义派生类Circle,其中含有:

一个私有双精度类型的字段radius;带两个参数的构造方法为name,radius赋值,其中为name赋值调用父类的构造方法;实现方法Area()(返回举行的面积)和Show()(无返回值,在屏幕上显示图形名称(圆)和面积)。

(5)在program类(默认)中Main方法中:

创建一个Shape类型的数组s,其中两个元素分别为newRectangle(“小矩形”,1.0,2.0)和newCircle(“大圆”,3.5);使用foreach遍历s,调用每个元素的Show方法。

(6)编译和测试程序,并查看运行结果。

3、

(1)打开vs2008,创建新项目(控制台应用程序),并命名为exp1_3。

(2)声明一个接口ICDPlayer,包含:

4个无返回值的方法:

Play(),Stop(),NextTrack()和PreviousTrack();一个整型的只读属性CurrentTrack。

(3)定义类CDPlayer实现该接口ICDPlayer,包含:

一个初始值为0的私有整型字段currentTrack;实现Play方法,功能是在屏幕上输出字符串“启动CD…”;实现Stop方法,功能是在屏幕上输出字符串“停止CD…”;实现NextTrack方法,功能是在屏幕上输出字符串“下一个音轨…”,并让currentTrack的值加1;实现PreviousTrack方法,功能是在屏幕上输出字符串“前一个音轨…”,并让currentTrack的值减1;实现只读属性CurrentTrack,读取时返回字段currentTrack的值。

(4)在program类(默认)中Main方法中:

创建一个CDPlayer类型的实例myCD;调用Play方法后在屏幕上输出当前音轨的值(CurrentTrack属性值);调用两次NextTrack方法后在屏幕上输出当前音轨的值;调用一次PreviousTrack方法后在屏幕上输出当前音轨的值;调用Stop方法。

(5)编译和测试程序,并查看运行结果。

4、

(1)打开vs2008,创建新项目(控制台应用程序),并命名为exp1_4。

(2)声明一个表示平面坐标系中的点的结构体CoOrds,包含字段x,y,以及带2个参数的构造函数。

(3)分别利用三种不同的方法(默认构造函数、有2个参数的构造函数、先声明结构体变量再对其x,y字段赋值),创建3个平面坐标点变量。

(4)编译和测试程序,并查看运行结果。

五、调试过程

六、实验结果

1、屏幕打印10行杨辉三角,如下图:

2、

3、

4、

七、总结

通过这个实验,我了解到了数组、类、接口和结构的定义,基本认识了结构和类的区别。

在一定程度上掌握了数组的声明、实例化、初始化和访问。

对于类、接口的声明和使用,结构的声明和调用有了进一步的认识。

附录:

(1)exp1_1.cs

usingSystem;

namespaceexp1_1

{

classprogram

{

staticvoidMain()

{int[,]A=newint[10,10];

inti,j;

for(i=0;i<10;i++)//下三角初始化为0

for(j=0;j<=i;j++)

A[i,j]=1;

for(i=2;i<10;i++)//计算杨辉三角

for(j=1;j

A[i,j]=A[i-1,j]+A[i-1,j-1];

for(i=0;i<10;i++)//显示输出

{for(j=0;j<=i;j++)

Console.Write("{0,5}",A[i,j]);

Console.WriteLine();

}

}

}

}

(2)exp1_2.cs

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

namespaceexp1_2

{

publicabstractclassShape

{

privatestringname;

publicShape(strings)

{

Id=s;

}

publicstringId

{

get

{

returnname;

}

set

{

name=value;

}

}

publicabstractdoubleArea

{

get;

}

publicoverridestringToString()

{

returnId+"Area="+string.Format("{0:

F2}",Area);

}

//publicabstractvoidShow(Area);

//{

//Console.WriteLine("{0}",Area);

//}

}

publicclassRectangle:

Shape

{

privatedoublewidth;

privatedoubleheigh;

publicRectangle(stringname,doublewidth1,doubleheigth1):

base(name)

{

width=width1;

heigh=heigth1;

}

publicoverridedoubleArea

{

get

{

returnwidth*heigh;

}

}

//publicoverridevoidShow();

//{

//Console.WriteLine("{0:

F2}",Area);

//}

}

publicclassCircle:

Shape

{

privatedoubleradius;

publicCircle(stringname,doubleradius1):

base(name)

{

radius=radius1;

}

publicoverridedoubleArea

{

get

{

returnradius*radius*System.Math.PI;

}

}

//publicoverridevoidShow();

//{

//Console.WriteLine("{0:

F2}",Area);

//}

}

classProgram

{

staticvoidMain(string[]args)

{

Shape[]S=

{

newRectangle("小矩形",1.0,2.0),

newCircle("大圆",3.5)

};

foreach(ShapesinS)

{

Console.WriteLine(s);

}

Console.ReadKey();

}

}

}

(3)exp1_3.cs

usingSystem;

usingSystem.Collections.Generic;

usingSystem.Linq;

usingSystem.Text;

namespaceexp1_3

{

publicinterfaceICDPlayer

{

v

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

当前位置:首页 > 法律文书 > 调解书

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

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