C#实验报告.docx

上传人:b****2 文档编号:23062053 上传时间:2023-04-30 格式:DOCX 页数:27 大小:173.63KB
下载 相关 举报
C#实验报告.docx_第1页
第1页 / 共27页
C#实验报告.docx_第2页
第2页 / 共27页
C#实验报告.docx_第3页
第3页 / 共27页
C#实验报告.docx_第4页
第4页 / 共27页
C#实验报告.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

C#实验报告.docx

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

C#实验报告.docx

C#实验报告

 

学生实验报告

(理工类)

 

课程名称:

C#程序设计教程专业班级:

学生学号:

学生姓名:

XFS

所属院部:

软件工程学院指导教师:

蔡群

2016——2017学年第2学期

 

金陵科技学院教务处制

实验报告书写要求

实验报告原则上要求学生手写,要求书写工整。

若因课程特点需打印的,要遵照以下字体、字号、间距等的具体要求。

纸张一律采用A4的纸张。

实验报告书写说明

实验报告中一至四项内容为必填项,包括实验目的和要求;实验仪器和设备;实验内容与过程;实验结果与分析。

各院部可根据学科特点和实验具体要求增加项目。

填写注意事项

(1)细致观察,及时、准确、如实记录。

(2)准确说明,层次清晰。

(3)尽量采用专用术语来说明事物。

 

(4)外文、符号、公式要准确,应使用统一规定的名词和符号。

(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。

实验报告批改说明

实验报告的批改要及时、认真、仔细,一律用红色笔批改。

实验报告的批改成绩采用百分制,具体评分标准由各院部自行制定。

实验报告装订要求

实验批改完毕后,任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列,装订成册,并附上一份该门课程的实验大纲。

 

实验项目名称:

实验一实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

 

一、实验目的和要求

(1)熟悉使用结构体

(2)熟悉使用DATETIME类,并清楚它的各种属性和赋值格式

(3)熟悉使用枚举类型,并清除它的各种用法

(4)了解并使用函数进行封装

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

三、实验过程

1.

usingSystem;

using;

using;

namespaceConsoleApplication2

{

classProgram

{

enumweek{星期日,星期一,星期二,星期三,星期四,星期五,星期六};structStudent

{

publicintno;

publicstringname;

publicDateTimebirthday;

}

staticvoidMain(string[]args)

{

Students1,s2;

=1;

=2;

="李明";

="王丽";

=newDateTime(1985,10,18);

=newDateTime(1986,2,16);

("{0}的生日为{1}",,usingSystem;

using;

using;

namespaceExperiment3

{

classProgram

{

staticvoidMain(string[]args)

{

for(inti=100;i<=999;i++)

{

inttemp=i;

inta=temp%10;

temp/=10;

intb=temp%10;

intc=temp/10;

intsum=a*a*a+b*b*b+c*c*c;

if(sum==i)

(i);

}

();

}

}

}

四、实验结果与分析

 

1.

分析:

声明Student结构体,里面有no、name、birthday三个成员。

输出生日时,用datetime类的ToShortDateString()方法去除时间。

输出中文的星期几,要定义一个week枚举,成员为星期日到星期一。

2.

分析:

从100到999进行for循环。

对每个数字先对10取余得出第三位,再除以10,去除末位,再对10取余得到第二位,再除以10去除第二位,得到第一位。

然后进行判断看是否满足条件,满足即输出。

 

实验项目名称:

实验二实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

一、实验目的和要求

(1)熟悉使用数组:

包括定义数组、初始化数组

(2)掌握如何给数组排序

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

三、实验过程

1.

usingSystem;

using;

using;

namespaceExperiment4

{

classProgram

{

分析:

这题实验的难点在于如何按学号进行排序和如何按姓名进行排序。

按学号进行排序我用了两个for循环,将每个学号与其后的学号进行比较,其后的学号比它小就进行位置的交换,同时名字也进行交换。

按姓名进行排序的原理与上面类似。

实验项目名称:

实验三实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

一、实验目的和要求

(1)掌握C#中的类声明和对象的定义方法

(2)掌握C#中属性的设计方法

(3)掌握C#中索引器的设计方法

(4)掌握C#中委托的设计方法

(5)掌握C#中事件的设计方法

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

三、实验过程

1.

usingSystem;

using;

using;

namespaceExperiment5_1

{

classCourse

{

stringcName;

intcredit;

intscore;

publicstringCName

{

get{returncName;}

}

publicintCredit

{

get{returncredit;}

}

publicintScore

{

get{returnscore;}

set{score=value;}

}

publicCourse(stringcName,intcredit,intscore)

{

=cName;

=credit;

=score;

}

}

classStudent

{

intno;

stringname;

Course[]course;

floatoyGPA;core/10)

{

case10:

point[i]=;break;

case9:

point[i]=;break;

case8:

point[i]=;break;

case7:

point[i]=;break;

case6:

point[i]=;break;

default:

point[i]=0;break;

}

}

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

{

dividend+=point[i]*course[i].Credit;

}

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

{

divisor+=course[i].Credit;

}

oyGPA=dividend/divisor;

}

core*course[i].Credit;

}

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

{

divisor+=course[i].Credit;

}

dividend*=4;

divisor*=100;

nlGPA=dividend/divisor;

}

Name,course[i].Credit,course[i].Score);

}

("常见算法GPA={0:

f2},标准算法GPA={1:

f2}",oyGPA,nlGPA);

();

}

}

classProgram

{

staticvoidMain(string[]args)

{

Course[]course={newCourse("课程1",4,92),newCourse("课程2",3,80),newCourse("课程3",2,98),newCourse("课程4",6,70),newCourse("课程5",3,89)};

Students=newStudent(1,"王华",course);

();

();

();

}

}

}

2.

usingSystem;

using;

using;

usingExperiment5_2

{

publicdelegatevoidstartExamType(DateTimestartTime);

 

分析:

定义Course类和Student类,Course类中存储课程信息、学分、分数,Student类存储学号、姓名、两种GPA得出的成绩、Student对象。

Student类中还定义了两种求解GPA的方法,第一种常见算法要用到点数,我使用swtich语句,根据分数不同获得不同的点数。

2、

 

分析:

第一步声明startExamType委托类型和startExamType事件,第二步在Student类中定义事件处理程序answer(),第三步在mian()函数中,为startExamType事件绑定方法,第四步在Teacher类中定义引发方法declare(),第五步在mian()函数中引发事件。

因为Teacher类与Student类互为委托,所以Student类的事件同理。

实验项目名称:

实验四实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

一、实验目的和要求

(1)掌握C#继承的概念和设计方法

(2)掌握C#中多态性的设计方法

(3)掌握C#中类对象的转换

 

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

 

三、实验过程

usingSystem;

using;

using;

usingExperiment4

{

classBClass

{

protectedstringname;

publicstringName

{

get{returnname;}

}

publicBClass(stringname)

{

=name;

}

}

classBook:

BClass

{

privatestringbookName;

privateintno;

publicstringBookName

{

get{returnbookName;}

}

publicintNo

{

get{returnno;}

}

publicBook(stringbookName,stringname,intno):

base(name)

{

=bookName;

=no;

}

}

classReader:

BClass

{

privateintlibCard;ookName+"<"+book[i].No+">");

}

}

}

classProgram

{

staticvoidMain(string[]args)

{

Readerr1=newReader(1234,"王华");

(newBook("C语言","谭浩强",100));

(newBook("数据结构","韩顺平",110));

(newBook("软件工程","张远",210));

Readerr2=newReader(2600,"李兵");

(newBook("操作系统","郝兵",208));

();

();

();

}

}

}

 

四、实验结果与分析

分析:

本题要有三个类,分别是Bclass类、Book类、Reader类,其中Bclass是基类,其它两个是子类。

Reader类的成员有一个是book,它对应的是Book类数组,用来存放借了的书的,它还有borrow方法(借书方法),每调用一个就num++一次,最多借5本,还有print()方法,用来输出借书人和所借的书的相关信息。

实验项目名称:

实验五实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

一、实验目的和要求

掌握C#窗体的属性和设计方法,窗体类型和调用方法,各种常见的内部控件的特点、属性、方法和事件过程,多窗体之间传递数据的方法,窗体事件的处理机制。

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

 

三、实验过程

1.

usingSystem;

using;

using;

using;

using;

using;

usingEX9_1

{

structStudent

{

publicintno;

publicstringname;

publicstringsex;

publicintclassId;

publicDateTimebirthday;

publicStudent(intno,stringname,stringsex,intclassId,DateTimebirthday)

{

=no;

=name;

=sex;

=classId;

=birthday;

}

}

publicpartialclassForm1:

Form

{

Student[]s=newStudent[3];

publicForm1()

{

s[0].no=1;

s[0].name="张三";

s[0].sex="男";

s[0].classId=99091;

s[0].birthday=newDateTime(1986,3,5);

s[1].no=2;

s[1].name="李四";

s[1].sex="男";

s[1].classId=99090;

s[1].birthday=newDateTime(1985,12,1);

s[2].no=3;

s[2].name="张丽";

s[2].sex="女";

s[2].classId=99091;

s[2].birthday=newDateTime(1980,3,2);

InitializeComponent();

}

privatevoidbtnOk_Click(objectsender,EventArgse)

{

if==0)

{

=s[0].();

=s[0].();

=s[0].();

=s[0].();

=s[0].();

}

if==1)

{

=s[1].();

=s[1].();

=s[1].();

=s[1].();

=s[1].();

}

if==2)

{

=s[2].();

=s[2].();

=s[2].();

=s[2].();

=s[2].();

}

}

}

}

 

四、实验结果与分析

1.

分析:

先完成对前台页面的设计,布置好按钮和下拉列表框等控件,在下拉列表框里添加子集学号,并对部分textbox控件设置它们的enabled属性为false。

后台先声明一个Student结构体,成员为学生相关的信息。

再声明一个结构体数字,并在Form1()函数中对其初始化。

最后完成确认按钮的点击事件,通过下拉列表框的slectedindex属性判断它选择的是哪个学号,然后根据学号将相应的文本框赋值。

实验项目名称:

实验六实验学时:

2学时

同组学生姓名:

XFS实验地点:

A203

实验日期:

实验成绩:

批改教师:

批改时间:

一、实验目的和要求

掌握C#菜单的基本结构和组成,下拉式菜单和弹出式菜单的设计方法,掌握通用对话框控件的设计方法、掌握InageList控件的设计方法;掌握TreeView(树视图)和ListView(列表视图)控件的设计的方法,掌握ToolStrip(工具栏)和StatusStrip(状态栏)控件的设计方法。

二、实验仪器和设备

具备装载MicrosoftVisualStdio2010或者更高级版本的MicrosoftVisualStdio2012/2013,或者VisualStdioUltimate等的电脑都可以。

 

三、实验过程

1.

usingSystem;

using;

using;

using;

using;

using;

usingEX10_1

{

publicpartialclassForm1:

Form

{

String[]subItem=newString[3]{"","",""};

String[]detail=newString[3]{"","",""};

publicForm1()

{

InitializeComponent();

}

privatevoidtreeView1_AfterSelect(objectsender,TreeViewEventArgse)

{

TreeNodenode=;

pg","企鹅.jpg","猩猩.jpg"};

detail=newString[3]{"万物之灵","肥肥胖胖,很可爱,代表人物:

马化腾","体格健壮的家伙"};

break;

case"鸟类":

subItem=newString[3]{"老鹰.jpg","布谷鸟.jpg","麻雀.jpg"};

detail=newString[3]{"天空最强速度","叫声很好听","麻雀虽小,五脏俱全"};

break;

case"鱼类":

subItem=newString[3]{"鲨鱼.jpg","鲸鱼.jpg","小丑鱼.jpg"};

break;

default:

break;

}

inti=0;

foreach(TreeNodenode1in

{

ListViewItemitemx=subItem[i]);

i++;

}

}

privatevoid小图标ToolStripMenuItem_Click(objectsender,EventArgse)

{

=;

rePaint();

}

privatevoid大图标ToolStripMenuItem_Click(objectsender,EventArgse)

{

=;

rePaint();

}

privatevoid列表ToolStripMenuItem_Click(objectsender,EventArgse)

{

=;

rePaint();

}

privatevoid完整图标ToolStripMenuItem_Click(objectsender,EventArgse)

{

=;

rePaint();

}

usingSystem;

using;

using;

using;

using;

using;

using;

namespaceex15_1

{

publicpartialclassForm1:

Form

{

DataViewdv=newDataView();

publicForm1()

{

InitializeComponent();

}

privatevoidForm1_Load(objectsender,EventArgse)

{

StringconStr=@"Provider=Source=";

OleDbConnectionconn=newOleDbConnection(conStr);

DataSetds=newDataSet();

DataSetds1=newDataSet();

();

OleDbDataAdapterda=newOleDbDataAdapter("Select*fromGrade",conn);

(ds,"Score");

dv=["Score"].DefaultView;

OleDbDataAdapterda1=newOleDbDataAdapter("Selectdistinct课程名fromGrade",conn);

(ds1,"Score");

=["Grade"];

utoSizeMode=;

[1].AutoSizeMode=;

[2].AutoSizeMode=;

=true;

=false;

();

}

priv

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

当前位置:首页 > 高中教育 > 英语

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

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