河工城市学院C#Net实验报告范例文档格式.docx

上传人:b****6 文档编号:21148816 上传时间:2023-01-27 格式:DOCX 页数:51 大小:406.17KB
下载 相关 举报
河工城市学院C#Net实验报告范例文档格式.docx_第1页
第1页 / 共51页
河工城市学院C#Net实验报告范例文档格式.docx_第2页
第2页 / 共51页
河工城市学院C#Net实验报告范例文档格式.docx_第3页
第3页 / 共51页
河工城市学院C#Net实验报告范例文档格式.docx_第4页
第4页 / 共51页
河工城市学院C#Net实验报告范例文档格式.docx_第5页
第5页 / 共51页
点击查看更多>>
下载资源
资源描述

河工城市学院C#Net实验报告范例文档格式.docx

《河工城市学院C#Net实验报告范例文档格式.docx》由会员分享,可在线阅读,更多相关《河工城市学院C#Net实验报告范例文档格式.docx(51页珍藏版)》请在冰豆网上搜索。

河工城市学院C#Net实验报告范例文档格式.docx

4、理解了C#的基本语句知识点及学科之间的融合渗透。

将之前所学的编程基本知识应用于软件设计,达到了学以致用的目的。

 

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

1.理解面向对象思想,体会面向对象思想在编程中的应用。

2.掌握VisualC#.NET类的创建(成员,方法,属性),类的继承,类的多态性及类的方法的重载。

1.为某公司创建一个类来建立员工的人事记录:

包括员工的姓名、性别、工资、到公司的日期、部门以及联系方式等信息。

构建该类,并做出适当的测试。

2.从上面的类中派生出一个类,来记录公司干部的情况。

包括职位、提职时间、管理的员工人数及姓名。

3.编写程序,使得一个大学书店可以用它来记录和确定教科书的零售价。

所有计算应该用一个类TextBook的实例来完成。

这个类应该具有属性Title(书名)、Author(作者)、Cost(批发费用)、Quantity(库存量)和Price(零售价)。

同时假设零售价是批发价的1.25倍。

4.编写程序相加两个分数,并将它们的和以化简后的分数形式表现出来。

程序使用类Fraction来存放分数的分子和分母,具有方法Reduce来化简结果。

1.题目1和题目2

Using指令集:

usingSystem;

定义Employee类

publicclassEmployee

protectedstringname;

privatestringsexy;

privateintsalary;

privatestringdate;

privatestringdepartment;

privatestringtelnum;

publicEmployee()

{}

publicEmployee(string[]args)

name=args[0];

sexy=args[1];

salary=Convert.ToInt32(args[2]);

date=args[3];

department=args[4];

telnum=args[5];

//virtual关键字,方法可以重写

publicvirtualvoidDisplay()

Name:

{0}"

name);

Sexy:

sexy);

Salary:

salary);

Date:

date);

Department:

department);

Telephone:

telnum);

定义Employer类,继承基类Employee

publicclassEmployer:

Employee

privatestringposition;

privatestringpromote_date;

privatestringnumber;

privatestring[]Ename=newstring[50];

publicEmployer(string[]args):

base(args)

position=args[6];

promote_date=args[7];

number=args[8];

for(inti=0;

i<

Convert.ToInt32(number);

i++)

Ename[i]=args[9+i];

//重写基类的Display的方法

publicoverridevoidDisplay()

base.Display();

Position:

position);

Promote_date:

promote_date);

Numberofemployee:

number);

Convert.ToInt32(number);

Nameofemployee{0}:

{1}"

i+1,Ename[i]);

Main函数调用Employee和Employer的构造函数和方法并显示:

publicclassClass1

----------------软件051------孔令民------051023----------------------"

string[]employee1=newstring[50];

Pleaseinputimformationofemployee:

(name,sexy,salary,date,department,telephonenumber)"

employee1=Console.ReadLine().Split('

'

//调用Employee构造函数

EmployeenewEmployee=newEmployee(employee1);

-----------------Thisistheimfomationofemployee:

-------------------"

//调用EmployeeDisplay()方法显示数据

newEmployee.Display();

-----------------------------------------------------------------------------"

Pleaseinputimformationofemployer:

(name,sexy,salary,date,department,telephonenumber,position,promote_date,numberofemployees,nameofemployees(name1name2name3...))"

//调用Employer构造函数

EmployernewEmployer=newEmployer(employee1);

------------------Thisistheimfomationofemployee:

//调用EmployerDisplay()方法显示数据

newEmployer.Display();

----------------------------------------------------------------------------"

题目1和题目2调试通过运行结果如下所示:

2.题目3

定义类TextBook

TextBook类包括Title,Author,Cost,Quantity,Price属性和Display方法

publicclassTextBook

publicstringTitle;

publicstringAuthor;

publicdoubleCost;

publicintQuantity;

publicdoublePrice;

publicTextBook(stringt,stringa,doublec,intq)

Title=t;

Author=a;

Cost=c;

Quantity=q;

Price=1.25*c;

publicvoidDisplay()

Title:

{0}"

Title);

Author:

Author);

Cost:

Cost);

Quantity:

Quantity);

Price:

Price);

Main函数调用Textbook的构造函数和方法并显示:

---------------软件051------孔令民------051023--------------------"

Pleaseinputinformationofthebook:

Title,Author,Cost,Quantity"

string[]info=Console.ReadLine().Split('

//不用初始化

stringt=info[0];

stringa=info[1];

doublec=Convert.ToDouble(info[2]);

intq=Convert.ToInt32(info[3]);

TextBooknewTextBook=newTextBook(t,a,c,q);

-----------------Thisistheimfomationofbook:

newTextBook.Display();

------------------------------------------------------------------------"

题目3调试通过运行结果如下所示:

输入C#BeginnerWaston8050

计算得Price=Cost×

1.25=100

3.题目4

定义了Faction类用来计算两分数相加

Faction类包括分子和分母两个属性,以及Reduce()和Display()两个方法

classPraction

publicintDenominator;

//分母

publicintMolecule;

//分子

publicPraction(intm,intd)

Denominator=d;

Molecule=m;

publicvoidReduce()

intt=Molecule;

for(inti=t;

i>

=1;

i--)

if((Molecule%i==0)&

&

(Denominator%i==0))

Molecule/=i;

Denominator/=i;

Console.WriteLine("

{0}/{1}"

Molecule,Denominator);

Main函数

-------------软件051------孔令民------051023--------------------"

Pleaseinputthemolecule(分子)ofthe1stpration:

intm=Convert.ToInt32(Console.ReadLine());

Pleaseinputthedenominator(分母)ofthe1stpration:

intd=Convert.ToInt32(Console.ReadLine());

PractionnewPraction=newPraction(m,d);

Console.Write("

您输入的第一个分数为:

newPraction.Display();

Pleaseinputthemolecule(分子)ofthe2ndpration:

intm1=Convert.ToInt32(Console.ReadLine());

Pleaseinputthedenominator(分母)ofthe2ndpration:

intd1=Convert.ToInt32(Console.ReadLine());

PractionnewPraction1=newPraction(m1,d1);

您输入的第二个分数为:

newPraction1.Display();

PractionaddPraction=newPraction(m*d1+m1*d,d*d1);

//化简分数

addPraction.Reduce();

两分数之和为:

addPraction.Display();

----------------------------------------------------------------------------"

题目4调试成功,运行结果如下所示:

四.实验感想

1、对实验原理有更深刻的理解,掌握了VisualC#.NET类的创建(成员,方法,属性),类的继承,类的多态性及类的方法的重载。

实验三文本编辑器的设计

1.熟悉VisualC#.NET的可视化界面,掌握控件的使用。

2.掌握System.IO类的文件流操作,会处理文件。

1.假设有要排序的20个数存在文件Data.txt中。

编写程序,打开该文件并将排好序的数重新写回该文件。

2.重新打开第1题创建的文件,在文件的结尾再添加10个随机数。

3.参考Windows的记事本程序,编写一个简单的文本编辑器程序。

4.编写程序,在用户选择了一个目录后,找出该目录及其子目录中所有后缀名为doc的文件。

5.假设有文本文件1.txt和2.txt。

编写程序,创建一个新的文本文件,将1.txt中的内容和2.txt中的内容重复两遍,交替写入新的文本文件,并删除1.txt和2.txt。

Winform窗体主界面

主界面由“排序/添加随机数”,“文本编辑器”,“文件查找”,“文件合并”,“退出”,五个按钮构成。

每个按钮实现内容的一个部分。

主界面如下所示:

1.排序添加随机数

源程序:

//窗体载入事件,把文本文件Test.txt的内容读入RichTextBox1中

privatevoidForm2_Load(objectsender,EventArgse)

FileStreamfs=newFileStream("

test.txt"

FileMode.Open,FileAccess.ReadWrite);

StreamReadersr=newStreamReader(fs);

richTextBox1.Text=sr.ReadToEnd();

sr.Close();

fs.Close();

//将文件中的10个随机数用冒泡法排序,并在RichTextBox2中显示

privatevoidbutton1_Click(objectsender,EventArgse)

string[]myDate=sr.ReadToEnd().Split('

'

myDate.Length;

for(intj=0;

j<

myDate.Length-i-1;

j++)

if(Convert.ToInt32(myDate[j])>

Convert.ToInt32(myDate[j+1]))

stringt;

t=myDate[j];

myDate[j]=myDate[j+1];

myDate[j+1]=t;

foreach(stringsinmyDate)

Console.WriteLine(s);

//将排好序的数写回到文件中

FileStreamfs1=newFileStream("

StreamWritersw=newStreamWriter(fs1);

myDate.Length-1;

sw.Write(myDate[i]);

sw.Write("

"

sw.Write(myDate[myDate.Length-1]);

sw.Close();

fs1.Close();

FileStreamfs2=newFileStream("

StreamReadersr2=newStreamReader(fs2);

richTextBox2.Text=sr2.ReadToEnd();

sr2.Close();

fs2.Close();

//往文件中写入随机数

privatevoidbutton2_Click(objectsender,EventArgse)

RandomnewRandom=newRandom();

//声明产生随机数对象

FileInfofi=newFileInfo("

using(StreamWritersw=fi.AppendText())

//写入随机数

10;

sw.Write('

sw.Write(newRandom.Next());

运行结果:

2.文本编辑器

界面设计如下所示:

主菜单栏设有文件,编辑,格式,帮助,返回主界面5个主菜单项,各主菜单的子菜单如下:

(1)文件

新建,打开,保存,退出

(2)编辑

剪切,粘贴,复制,撤销,恢复,查找

(3)格式

字体,颜色

功能设计如下:

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

当前位置:首页 > 初中教育 > 初中作文

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

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