面向对象程序设计实验报告_第1页
面向对象程序设计实验报告_第2页
面向对象程序设计实验报告_第3页
面向对象程序设计实验报告_第4页
面向对象程序设计实验报告_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、面向对象的程序设计实验实验一C#概述验目的1. 熟悉VisualC#.NET集成开发环境。2. 掌握控制台应用程序的开发方法。3. 掌握Windows应用程序的开发方法。实验要求1. 整理上机步骤,总结经验和体会。2. 完成实验口志和上交程序。实验内容题目一:最简单C#程序的开发(1) 选择“文件”f“新建”f“项目”命令,弹出"新建项目”对话框。仔细观察对话框的内容。在“项目类型”列表框中选中VisualC#选项;在“模板”列表框中选中“控制台应用程序”选项;在"名称”文本框中输入项目名称:在''位置”文本框中输入或选择项目的保存位置。单击“确定”按钮,将

2、显示控制台应用程序代码编辑窗II,在该窗II内显示系统自动生成的相应代码。仔细观察并分析这些代码。(2) 在代码编辑窗II内的Mam()方法中添加如下代码:usingSystem;namespacehelloclassHelloWoildpublicstaticvoidMainQConsole.WriteLme(nHelloworld!");(1) 选择“调试”一?“启动调试”命令,或按F5键,或单击工具栏上的EE!按钮,运行程序,查看运行结果。(2) 在项目的保存位置处查看项目中过的所有文件。二:创建控制台应用程序(1)选择“开始”一?"程序"?“Microso

3、ftVisualStudio2005”一?uMicrosoftVisualStudio2005"命令,启动VisualStudio2005?并仃?细观察起始页的内容。2选择“文件”f“新建”f"项目”命令,弹出“新建项目”对话框。仔细观察对话框的内容。在“项目类型”列表框中选中VisualC#选项;在“模板”列表框中选中“控制台应用程序”选项;在“名称”文本框中输入项目名称;在“位置”文本框中输入或选择项目的保存位置。单击“确定”按钮,将显示控制台应用程序代码编辑窗II,在该窗II内显示系统自动生成的相应代码。仔细观察并分析这些代码。3在代码编辑窗【I内的Main(方法中添

4、加如下代码:Console.Write("当前系统的口期为:”;/将系统的口期转换为长口期字符串表示形式进行输出Console?WriteLine(DateTime?Now?ToLongDateString0;Console?ReadO;4选择“文件”一?“全部保存”命令,保存项目。5选择“调试”?“开始执行(不调试”命令或按CU1+F5组合键运行程序,并观察运行情况。6在项目的保存位置处查看项目中过的所有文件。实验二C#数据类型实验目的1 .了解C#中的各种数据类型及其相互转换方法。2 .了解C#中的常量和变量。3 .掌握C#中的常用的操作符与表达式。4 .进一步熟悉C#程序的开发

5、过程。5 .掌握C#中选择结构语句的使用。6 .掌握C#中循坏结构语句的使用。7 .掌握C#中的跳转结构语句。:、实验要求1 .分析程序,上机验证结果。2 .写生程序,并调试程序,要给由测试数据和实验结果。3 .整理上机步骤,总结经验和体会。4 .完成实验口志和上交程序。实验内容IS曰一:程序分析(1)分析程序,写由程序的运行结果,并上机进行验证usmgSystem;publicclassBoolTestpublicstaticvoidMain()Console.WHteC2输入一个字符:");chaic-(char)ConsoleReadQ;if(Cliar.IsLetter(c)

6、if(ChailsLowei(c)Console.WnteLmeC*字符是小写的口”);Console.WnteLmeC*字符魁大写的。”);ConsoleAVriteLmeCA符不是字母);(2)分析程序,写由程序的运行结果,并上机进行验证usmgSystem;classtestpublicstaticvoidMam()strmga-Mu006Sellou;stringb-"world*;Console.WiiteLine(a+b);Console.WiiteLine(a+b-"helloworld*);(3) 分析程序,写出程序的运行结果,并上机进行验证。usingSy

7、stem;namespace_1classProgramstaticvoidMainOinta=10;Console?WriteLineC*a=0",a);intb=newint();Console?WriteLineC1:b=0b);b=10;Console.WriteLine("2:b=0",b);Int32c=10;Console?WriteLineCc=0",c);Int32d=newInt320;Console?WriteLineC1:d=0d);d=10;Console.WriteLine("2:d=0",d);Conso

8、le?WriteLine(/"int:0、lint?MinValue,int?HaxValue);Console?ReadO;(4) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1classProgramstaticvoidMainOcharcl二a'charc2='x0062'charc3='u0063'Console.WriteLineCel:0nc2:lnc3:2n",cl,c2,c3);Console?ReadO;(5) 分析程序,写出程序的运行结果,并上机进行验证。usingSy

9、stem;namespace_1classProgramenumWeekDaysun,mon,tue,wed,thu,fri,satstaticvoidMainOWeekDaya=WeekDay.sun;Console?WriteLine(a);WeekDayb=(WeekDay)4;Console?WriteLine(b);Console?ReadO;(6) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1classProgramstaticvoidHain(stringargs)intjagArray=newint2newint5,newint3

10、;for(inti=0;i<jagArray?GetL亡ngth(O);i+)for(intj=0;j<jagArrayti?Length;j+)jagArray=i+j;for(intk=0;k<2;k#)Console?WriteLine(/'jagArray0k);for(intm=0;m<jagArrayk?Length;m+)Console.Write(z,0,-3jagArraykm);Console?WriteLine();Console?ReadO;7) 分析程序,写出程序的运行结果,并上机进行验证。namespace_1classProgram

11、staticvoidMain(stringargs)x=1;Console?WriteLine(A,l:x=0,typex=10.01;Console?WriteLine("2:x=0,typex='u006r;Console?WriteLine(A,3:x=0,typex="Hello!"Console?WriteLine("4:x=0,typeConsole?ReadO;objectx;using System;1 x. GetTypeO);1 x, x. GetTypeO) ;1 x, x. GetTypeO) ;1 x, x. GetTy

12、peO) ;8) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1classProgramstaticvoidHain(string】args)Console.Write输入1T2之间的任总一个整数:;strings=Console?ReadLine();intmonth=int?Parse(s);switch(month)casel:Console?WriteLine("January");break;case2:Console?WriteLine("February");break;case3:Consol

13、e?WriteLine("March");break;case4:Console?WriteLine("April");break;case5:Console?WriteLine("May");break;case6:Console?WriteLine("June"):break;case7:Console?WriteLine("July"):break;case8:Console?WriteLine("August");break;case9:Console?WriteLi

14、ne("September");break;case 10:Console? WriteLine("October");break; case 11:Console?WriteLineC'oveber");break;break; case12:Console?WriteLine("December"):break;default:Console.WriteLineC输入错误,转换失败。Console?ReadO;(9) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1cl

15、assProgramstaticvoidHain(stringargs)int,a=newin讥5,5;a0,0=1;for(inti=1;i<5;i#)ai,0=1;ai,i=1;for(intj=1;j<i;j+)ai,j=ai-1,j-1+ai-1,j;for(inti=0;i<5;i+)for(intj=0;j<=i;j+)Console.WriteLineC0t*,ai,j);Console?WriteLine0;Console?ReadO;(10) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1classProg

16、ramstaticvoidHain(stringargs)intodd=0,even=0;intarray=newint0,4,7,8,9,10,14,17,19,24,56;foreach(intiinarray)if(i%2=0)even十+;elseoddH;odd, even);Console.WriteLine("0个奇数,1个偶数"(11) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;publicclassTestDoWhilepublicstaticvoidMain0intx;inty=0;dox=y+;Console?Writ亡Li

17、ne(x);while(y<5);(12) 分析程序,写出程序的运行结果,并上机进行验证。usingSystem;namespace_1classProgramstaticvoidHain(stringargs)Console?WriteLineCbreak“);for(inti=0;i<10;i+)if(i=5)break;Console?Writ亡Lin亡("iis"+i);Console?WriteLineCcontinue”);for(inti=0;i<10;i+)if(i=5)continue;Console?Writ亡Line("ii

18、s"+i);Console?ReadO;题目二:程序编写(1)编写程序,定义一个包括?学生基本资料的结构类型数据(要求包括学号、姓名、性别、年龄、家庭住址等),并对其进行测试。( 2) 编写程序,将一年中的12个月建立一个枚举类型,并对其进行测试。( 3) 编写程序,使用int类型数据进行装箱与拆箱转换。( 4) 编写程序,分别用fbr、while>dowhile语句实现求前n个自然数之和。( 5) 编写程序,输出九九乘法表。实验三C#面向对象程序设计实验目的1. 理解C#语言是如何体现面向对彖编程基本思想。2. 掌握类对彖的定义。3. 了解类的封装方法,以及如何创建类和对彖。

19、4. 了解成员变量和成员方法的特性。5. 掌握静态成员的用法。实验要求1. 分析程序,上机验证结果。2. 写出程序,并调试程序,要给出测试数据和实验结果。3. 整理上机步骤,总结经验和体会。4. 完成实验口志和上交程序。实验内容题目一:程序分析(1) 分析下面两个程序,确定那个程序好,说明理由。程序要求:定义一个圆类,计算圆的面积和周长。程序1:publicclasscirclepublicstaticvoidMam()doubleradium,delimeter,square;constdoublepai=3.1415926;radium=Convert.ToIiit32(Console.R

20、eadLineQ);delimeter=2*pai*radium;square=pai*pai*radium;Console.WnteLine(Hdelimeter=0,squaie=1,delu”neter,square);Console.ReadLme();程序2:publicclasscircledoubledelimeter,squaie;constdoublepai=3.1415926;publicvoidcalculate(doublerad)delimeter=2*pai*rad;square=pai*pai*rad;Console.WnteLine(Hdelimeter=0,s

21、quaie=l,delmietei,squaie);publicstaticvoidMaui()doubleradium:circlecir=newcucleQ;radium=Convert.Tonit32(Console.ReadLineQ);cii.calculate(radium);Console.ReadLine();一1j1.(2)分析程序,写由程序的运行结果,并上机进行验证。UsingSystem;publicclassstudentsstrmgid卫ame;mtage;publicstudents(stnngld.striiignaineAiiitage)tliis.id=id;

22、tliis.naine=name;tliis.age=age;publicvoidDisplay。Console.WriteLine(Hid=0jiame=l,age=2,id,name,age);publicstaticvoidMaui()/suingid,name;/iiitage;studentsstu=newstudents(OOO1'7*zhangsan,16);stu.Display();Console.ReadLme();X)(3)分析程序,写由程序的运行结果,并上机进行验证。publicclassDateprivateiiitYeai;Month.Day;publicD

23、ate(intYeai;iiitMonth.iiitDay)tliis.Year=Yeai-;tlus.Month=Month;tliis.Day=Dav;publicDate(System.DateTunedt)Yeai=dt.Yeai-;Montli=dt.Month;Day=dt.Day;publicvoidDisplavDate()Console.WriteLine(n0年1月2口Year.Month.Day);publicclassTesterpublicstaticvoidMainQSystem.DateTimecunentTime=System.DateTime.Now;Date

24、dt=newDate(2008J.18);dt.DisplayDateQ;Datedt2=newDate(cunentTime);dt2.DisplavDate();Console.ReadLme();I)题目二:程序编写实现一个包含类属性方法的简单加法程序,并能显示结果。实现一个Person类,要求:属性包含姓名、年龄、身份证号、工作、工资等,并显示各属性的值。实验四c#面向对象程序设计(二)实验目的和重1. 掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义载构造函数。能够根据给定的要求定义类并实现类的成员函数。2. 理解类的成员的访问控制的含义,公有、私有和保护成员

25、的区别。3. 掌握参数传递的用法。4. 掌握属性的作用和使用。实验要求1. 分析程序,上机验证结果。2. 写出程序,并调试程序,要给出测试数据和实验结果。3. 整理上机步骤,总结经验和体会。4. 完成实验口志和上交程序。实验内容题目一:程序分析( 1) 分析程序,写出程序的运行结果,并上机进行验证,然后回答后面问题。publicclassBaiikAccouiitstaticiiittotalAccountNumbei=0:strmgBaiikAccountld;doublelnitialDepositAmount=0.00;publicBaiikAccount(stimgmvld)tlus.

26、BaiikAccountld=myld;tliis.initialDepositAinount=0.00;totalAccountNumber+;publicvoiddisplayidQConsole.WiiteLine(Hmbaid=0,initialDepositAinount=l,this.BaiikAccountIdjhisnutialDepositAmount);publicstaticvoiddisplavQConsole.WnteLine(HtotalAccountNumbei-0,totalAccountNumber);publicclassTesterpublicstatic

27、voidMaiii()BaiikAccountmba=newBaiikAccount(H37000001M);BaiikAccountmba2=newBankAccount(H3700002H);BaiikAccountmba3=newBankAccount(HH);BaiikAccountmba4=newBankAccount(H3700004n);/Console.WiiteLme(Mmba2ID=0,mba2.BaiikAccountId);mba2.displayid();BaiikAccount.displayO;Console.ReadLme();请回答问题:(1) 按你自己的算法

28、修改以上程序,比如可只输出生成的账户数。(2) 把注释去掉后会怎样,为什么?(3) 为什么display用类名直接引用,可以用对彖来引用么?尝试输出结果。(4) 类的静态变量和非静态变量的引用区别。判断一下语句的正确性:静态方法只能使用静态变量,不能使用实例变量。因为对彖实例化之前,实例变量不可用。这个观点真确么?()类的静态变量只有一个版本,所有实例对彖引用的都是同一个版本。()对彖实例化后,每个实例变量都被制作了一个副本,它们之间互不影响。()题目二:程序编写1.编写一个传值调用的程序。程序功能要求:程序首先给整型变量x和y赋初值3,5,然后使用传值调用方式调用方法对x和y做乘方并及输由x和y的乘方值,最后输出x和y得值。再将此方法给为对象调用加ref修饰查看输出结果差异。【思考题】1. 方法的参数传递有哪些方式?区别时什么?2. 什么是构造方法。实验五:创建Windows应用程序、实验目的1. 了解c#中的各种控件的属性赋值方法。2. 了解C#中控件的事件中输生的方法。3. 进一步熟悉C#程序的开发过程。:、实验要求1 .分析程序,上机验证结果。2 .写生程序,并调试程序,要给由测试数据和实验结果。3 .整理上机步骤,总结经验和体会

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论