NET复习参考Word文档下载推荐.docx
- 文档编号:16362822
- 上传时间:2022-11-23
- 格式:DOCX
- 页数:31
- 大小:26.91KB
NET复习参考Word文档下载推荐.docx
《NET复习参考Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《NET复习参考Word文档下载推荐.docx(31页珍藏版)》请在冰豆网上搜索。
C..NET托管程序的编译程序
D.支持.NET托管程序的操作系统
B
(6)下面哪些是Microsoft.NET平台的组件___________。
A.Microsoft.NET产品和服务B.MicrosoftVisualStudio.NET开发平台
C..NET平台本身D.第三方.NET服务
ACD
(7)选择针对Microsoft.NET平台表述正确的项目:
______________。
A.主要由Microsoft.Net产品及服务、.NET平台本身及第三方.NET服务这三个组件组成
B.Microsoft.NET平台中不能够使用java进行开发工作
C..NET平台基于两种核心技术,及XML和Internet协议套件
D..NET框架即为公共语言运行库与.NETFramework类库的集合体
ACD
第1-5章C#基本语法
掌握基本语法
∙T假设变量x的值为25,要输出x的值,下列正确的语句是____________。
∙System.Console.writeline(“x”);
∙System.Console.WriteLine(“x”);
∙System.Console.WriteLine(“x={0}”,x);
∙System.Console.WriteLine(“x={x}”);
∙关于C#程序的书写,下列不正确的说法是_____________。
∙区分大小写
∙一行可以写多条语句
∙一条语句可以写成多行
∙一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法
∙以下标识符中,正确的是_____________。
∙_MyNameB.classC.12monthsD.a3#
A
∙在C#中,进行注释的方法有两种,“//”和“/**/”,其中_______谁是用来做单行注释的。
//
∙在C#中,要在控制台程序运行时向屏幕输出某些信息,且要求每次输出的最后进行回车换行处理,可使用Console类的____________方法。
WriteLine()
∙语句while(!
e)等价于____________________________。
答:
while(e==false)或while(e!
=true)
∙若while循环的“头”为while(i++<
=10),并且i的初始值为0,同时在循环体中不会修改i的值,则循环体将被重复执行____11____次后正常结束。
∙写成下列程序的运行结果:
usingSystem;
classTest
{
publicstaticvoidMain()
{
ints=0;
inti;
for(i=1;
;
i++)
if(s>
30)break;
if(i%2==0)
Console.WriteLine(i);
s+=i;
}
Console.WriteLine("
i="
+i+"
s="
+s);
}
24681012i=13s=42
inti,j;
for(i=0;
i<
3;
for(j=0;
j<
=i;
j++)Console.write(“*”);
Console.WriteLine();
*
**
***
∙改错题:
下面代码拟输出1-20之间3的倍数的整数,请指出其中的错误。
inti;
for(i=1;
=20;
if(i%3!
=0)
continue;
Console.WriteLine(i.ToString());
for循环内代码应改为:
if(i%3!
continue;
∙C#中如何进行方法重载,在如下方法中选择可用项目:
(选择两项)________
∙修改方法名称B)修改同名方法的参数数量
C)修改同名方法的参数类型D)给要被重载的同名方法前添加new关键字
BC
第6章异常处理
(1)异常对象均为____________类的对象
ASystem.ExceptionB.System.AttributeC.System.ConstD.System.Reflection
A
(2)填空:
C#异常语句包含_____________子句块、______________子句块和_____________子句块。
_____________子句中包含可能产生异常的语句,______________子句中包含了对不同异常类型的处理代码。
trycatchfinallytrycatch
(3)___________类型的异常可以匹配catch(Exceptione)语句。
A.DivideByZeroExceptionB.FormatException
C.任何D.AccessException
(4)异常就是_________的错误,导致程序非正常退出,通常是由于编程人员对程序所遇到的情况没有充分估计而造成的。
A.程序中出现不可控制B.人为造成C.不可预测D.可以控制
(5)在C#程序中可使用try…catch机制来处理程序中出现的__________错误。
A.语法B.运行C.逻辑D.拼写
B
(6)在.NET的程序中,永远无法执行的代码、死循环、非预期的输出,属于_______错误。
A.逻辑错误B.语法错误C.语义错误D.输出错误
(7)在C#命令行程序中,未被程序显示处理的异常将___________。
A.导致.NET输出错误消息并退出程序
B.导致.NET以消息框来警告用户
C.导致操作系统崩溃
D.被忽略
(8)读程序写出运行结果:
usingSystem.Collections.Generic;
usingSystem.Text;
namespaceExceptions2
classProgram
staticvoidmain(string[]args)
inti=0;
try
intresult=234/i;
catch(Exceptionex)
Console.WriteLine(“ReachingException!
”);
finally
Console.WriteLine(“ReachingFinally,butinthisProgram,wecan’tgethere!
ReachingException
ReachingFinally,butinthisProgram,wecan’tgethere!
(9)读程序写出运行结果:
publicclassTEApp
publicstaticvoidThrowException()
thrownewException();
publicstaticvoidMain()
try"
);
ThrowException();
catch(Exceptione)
catch"
finally
Finally"
try
catch
Finally
第7章类和对象
7.1节理解
例题:
(1)简答:
如何理解面向对象程序设计中类和对象之间的关系?
类是具有相同特征的对象的集合,或者说是具有相同属性和行为的对象的抽象。
对象是类的具体实例化,是封装了属性和行为的实体。
类和对象之间是抽象与具体的关系。
7.2节大致了解
7.3、7.4节理解构造器、构造器重载、默认构造器的概念和作用。
学会应用,会写代码
∙下列关于构造器的描述正确的是___________。
∙构造器可以声明返回值类型B.构造器不可以用private修饰
C.构造器必须与类名相同D.构造器不能带参数
(2)关于默认构造器的说法正确的是___________.
A.默认构造器就是系统自动生成的构造器;
B.默认构造器就是指不获取任何参数的构造器;
C.无论自己是否定义构造器,系统都会自动生成一个默认构造器;
D.默认构造器与其他带参数的构造器不构成重载关系
(3)简述什么是默认构造器
默认构造器就是指类内不获取任何参数的构造器,对于一个类,如果程序员自己未声明任何构造器,则系统会自动生成一个不带参数的默认构造器,一旦自己声明任何构造器,系统则不再自动生成。
程序员自己也可以声明不带参数的默认构造器。
(4)编程:
已知程序运行结果,按照注释中的提示补全程序代码。
namespacecubeTest{
classCube
privateintl;
//立方体的长
privateintw;
//立方体的宽
privateinth;
//立方体的高
/*请在下面定义几个重载的构造函数,使后面的主函数Main()中的语句运行正常,且输出结果与给出的运行结果相符*/
publicCube()
this.l=10;
this.w=10;
this.h=10;
publicCube(intl,intw,inth)
this.l=l;
this.w=w;
this.h=h;
publicCube(intl,intw)
/*下成员函数完成长宽高的输出*/
publicvoidinfoPrint()
Console.WriteLine(“此立方体的长为{0},宽为{1},高为{2}”,this.l,this.w,this.h);
/*下面定义名为volume的成员函数,用于返回立方体的体积*/
publicintvolume()
inttiji;
tiji=this.l*this.w*this.h;
returntiji;
staticvoidMain(string[]args)
Cubec1=newCube();
//调用默认构造函数
c1.infoPrint();
//此句输出为:
此立方体的长为10,宽为10,高为10
Console.WriteLine(“其体积为{0}”,c1.volume());
其体积为1000
Cubec2=newCube(4,5,6);
//调用构造函数
c2.infoPrint();
//此句输出结果为:
此立方体的长为4,宽为5,高为6
Console.WriteLine(“其体积为{0}”,c2.volume());
其体积为120
Cubec3=newCube(4,5);
c3.infoPrint();
此立方体的长为4,宽为5,高为10
Console.WriteLine(“其体积为{0}”,c3.volume());
其体积为200
(5)编写一个矩形类,具有长(len)宽(wid)两个字段,无参数构造函数为len和wid设置默认值,均为0,有参数构造函数设置具体值。
此外类包含以下几个方法:
取长度、取宽度、计算周长、计算面积等方法。
(6)类的字段和方法的默认访问修饰符是____________.
A.publicB.privateC.protectedD.internal
7.5节理解实例方法和工具(静态)方法的区别,理解static定义的字段的作用,学会用其进行编程,了解静态类的意义。
什么是实例方法,什么是工具(静态static)方法,它们在使用时有什么不同?
必须创建类的实例对象才能调用的方法称为实例方法,其调用格式为“对象名.方法”,当方法声明中以static修饰时,该方法称为静态方法,或工具方法,它独立于具体的对象,调用方法为“类名.方法”。
(2)简答:
类中以static关键字修饰的字段与普通字段有什么区别?
static修饰的字段是共享字段,它可以在类的所有对象间进行共享,它不同于普通字段,并不属于特定的实例对象,而是属于类。
(3)编程:
设计一个男女人数统计程序。
定义一个Person类,包含姓名、性别、年龄三个公有字段。
另包含males和females两个私有静态字段成员,用来记录男、女学生的人数;
还有NumberMales和NumberFemales两个公有方法成员,这两个方法通过对静态字段males、females的访问返回男生总人数、女生总人数。
设计其构造函数,要求完成每个Person对象的字段的赋值和男女总人数的累加。
主函数已给出。
namespaceBoyandGirl
publicenumGender{男,女};
publicclassPerson
//在下面定义字段males和females,分别统计男女人数
privatestaticintmales;
privatestaticintfemales;
//定义公有字段,描述个人信息
publicstringName;
publicGenderSex;
publicintAge;
//在下面定义构造函数,用来初始化对象,并完成男生、女生人数的累加
publicPerson(stringname,Gendersex,intage)
Name=name;
Sex=sex;
Age=age;
if(sex==Gender.男)
males++;
//男生人数加1
if(sex==Gender.女)
females++;
//女生人数加1
//下面成员方法用于返回男生人数
publicstaticintNumberMales()
returnmales;
//下面成员方法用于返回女生人数
publicstaticintNumberFemales()
Returnfemales;
}//classPerson结束
staticvoidMain(String[]args)
//创建Person型的数组对象,用来记录6个人的信息
Person[]ps=newPerson[6];
ps[0]=newPerson(“李伟峰”,Gender.男,20);
ps[1]=newPerson(“郭小雨”,Gender.女,19);
ps[2]=newPerson(“赵荣”,Gender.男,22);
ps[3]=newPerson(“刘恒”,Gender.男,21);
ps[4]=newPerson(“陈晶晶”,Gender.女,21);
ps[5]=newPerson(“张馨”,Gender.女,20);
intNumOfMales=Person.NumberMales();
intNumOfFemales=Person.NumberFemales();
Console.WriteLine(“男生人数:
{0}”,NumOfMales);
Console.WriteLine(“女生人数:
{0}”,NumOfFemales);
Console.WriteLine(“学生名单如下:
”);
foreach(Personpinps)
Console.Write(“{0}\t”,p.Name);
Console.Write(‘\n’);
Console.ReadLine();
第8章值和引用
理解值类型和引用类型的区别,知道哪些类型是值类型,哪些类型是引用类型,理解ref参数的作用,理解装箱和拆箱
∙下列不属于值类型的是___________。
∙classB.enumC.structD.int
∙下列选项中,___________是引用类型。
∙enum类型B.struct类型C.string类型D.int类型
∙下列哪两种类型属于值类型?
____C、D_______
A.数组B.类C.枚举(enum)D.结构(struct)
引用类型:
string类型,类类型,数组类型
(4)书上P142页上两段代码的运行结果。
会读类似代码,并能写出运行结果。
staticvoidDoIncrement(intparam)
param++;
staticvoidmain()
intarg=42;
DoIncrement(arg);
Console.WriteLine(arg);
//输出42,而不是43
staticvoidDoIncrement(refintparam)
//输出43
(5)实验课的一道题:
写出下例代码的运行结果:
namespaceExp0203
classSwaper
publicvoidSwap(intx,inty)
inttemp;
temp=x;
x=y;
y=temp;
StaticwoidMain()
Swapers=newSwaper();
Console.WriteLine(“请任意输入两个整型数:
inta=Convert.ToInt32(Console.ReadLine());
intb=Convert.ToInt32(Console.ReadLine());
Console.WriteLine(“交换前a、b的值分别为:
{0},{1}”,a,b);
s.Swap(a,b);
Console.WriteLine(“交换后a、b的值分别为:
如果希望程序能够完成交换a、b值的功能,应该如何修改?
∙publicvoidSwap(refintx,refinty)
∙Main函数中的语句“s.Swap(a,b);
”改为“s.Swap(refa,refb);
”
(6)关于装箱与拆箱,表述正确的是______________(选择2项)
A.装箱是指从值类型到引用类型的转换,而拆箱是指从引用类型到值类型的转换
B.装箱是指从引用类型到值类型的转换,而拆箱是指从值类型到引用类型的转换
C.装箱是指将数据存储位置由堆转移到栈,而拆箱是指将数据存储位置由栈转移到堆
D.装箱是指将数据存储位置由栈转移到堆,而拆箱是指将数据存储位置由堆转移到栈
AD
(7)简答:
什么是装箱?
什么是拆箱?
并通过简答的代码实例加以解释。
装箱指从值类型到引用类型的转换,或者说将一个数据项从栈自动复制到堆的行为,如下例所示:
inti=42;
objecto=i;
//装箱
拆箱指从引用类型到值类型的转换,或者说从装箱后存储于堆中的数据项中提取出值的过程,如下例所示:
objecto=42;
inti=(int)o;
//拆箱
第9章
知道结构和枚举都属于值类型,看得懂基本的结构和枚举类型的程序代码。
第10章数组和集合
掌握一维数组、二维数组的定义、初始化、使用方法。
∙下面是几条定义初始化一维数组的语句,其中正确的是___________。
∙intmyArray[]={1,2,3,4,5};
∙int[]myArray=newint[];
∙int[]myArray=newint[]{1,2,3,4,5};
∙int[]myArray;
myArray={1,2,3,4,5};
C
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- NET 复习 参考