C#题Word格式.docx
- 文档编号:21435216
- 上传时间:2023-01-30
- 格式:DOCX
- 页数:15
- 大小:24.67KB
C#题Word格式.docx
《C#题Word格式.docx》由会员分享,可在线阅读,更多相关《C#题Word格式.docx(15页珍藏版)》请在冰豆网上搜索。
for(inti=0;
i<
x++;
i++)
{Temp+=I;
}
Console.WriteLine(temp);
Console.ReadLine();
}}
A45B55C66D抛出异常
(10)将下面while循环语句改为for循环语句,哪些选项是正确的(A)?
while(i<
=100)
{sum=sum+i;
i++;
Afor(;
=100;
)Bfor(i=0;
j<
101;
j++)
}{sum=sum+i;
Cfor(i=0;
100;
i++)Dfor(i=0;
=99;
{sum=sum+i;
++i;
++I;
(11)int[][]myArray3=newint[3][]{5,6,2},newint[5]{6,9,7,8,3},newint[2]{3,2}};
myArray3[3][2]的值是(D)
A9B2C6D越界
(12)下列关于数组与集合类的描述中,哪些是错误的(C)
A数组大小固定,不能变化
B集合元素的类型为Object
C数组可以声明为只读
D数组与集合都可以通过下标访问
(13)下面程序的输出结果是(A)
ClassMainClass
{pblicstaticvoidMain(string[]args)
{System.Collections.Queuequ=newQueue();
Foreach(intiinnewint[4]{1,2,3,4})
{qu.Enqueue(i);
4;
{Console.WriteLine(qu.Dequeue());
A1234
B4321
C1111
D4444
(14)下列关于HashTable的说法正确的(ABC)
A:
HashTable中key/value的值既可以是值类型数据又可以是引用类型数据
B:
HashTable类可以通过Add方法向其中加入一个名/值对;
C:
可以对HashTable对象的内容进行排序
D:
哈希表可以像数组一样,通过索引的方式访问其中的元素
(15)下面程序输出的结果是(C)
ClassPrograf
{PublicstaticvoidMain()
{SortedLists1=newSortedList”();
Sl[“c”]=41;
Sl[“a”]=42;
Sl[“d”]=11;
Sl[“b”]=13;
Foreach(DictionaryEntryelementins1)
{Strings=(string)element.Key;
inti=(int)element.Value;
Console.WriteLine(“{0},{1}”,s,i)}}}
c,41a,42d,11b,13
”c”,41”a”,42”d”,11”b”,13
a,42b,13c,41d,11
“a”,42“b”,13“c”,41“d”,11
(16)以下关于类的描述中,不正确的有(D)
A;
类是对自然现象或实体的程序语言描述
B;
类是对一组相似对象的抽象
C;
类是一种虚拟的概念
D;
对象是类的实例化,所以现有类,后有对象
(17)下列关键字中哪些不能作为修饰类(C)
A:
sealedB:
abstractC:
overrideD:
public
(18)关于静态成员的描述,正确的是(AB)
静态成员属于类,不属于某一个类的实例。
不同的类实例处理类的静态域时,访问的是同一个存储空间的数据
在静态方法中可以使用this关键字
通过一个类的实例可以访问类的静态成员。
(19)下列关于this关键字的描述,哪些是不正确的(CD)
在类的构造函数中this表述对正在构造的对象本身的引用
在类的方法中this表示对调用该方法的对象的引用。
this可出现在任何地方。
this指代的为某一个对象,故可对其进行算术运算
(20)关于构造函数,下列表述正确的是(CD)
构造函数是由编译系统自动调用,故构造函数只能由编译系统调用
构造函数只需要完成初始化操作,故返回值类型为void。
构造函数分为静态构造函数和实例构造函数,实现不同类型成员的初始化。
可以在静态构造函数中初始化实例成员,也可以在实例构造函数中初始化静态成员。
(21)关于静态构造函数,表述不正确的是(D)
静态构造函数最多只运行一次且不可以被继承。
如果没有自定义静态构造函数,翻译系统会自动生成默认构造函数。
一个类只能有一个静态构造函数。
静态构造函数像实例构造函数一样,可以有参数也可以无参数。
(22)下列关于只读域的描述中哪些是正确的(ABD)
只读域只能通过readonly关键自定义
只读域只能在声明时进行初始化,不能在构造函数中初始化
readonly与const关键字的作用是一样的
只读域可以是C#支持的任何类型
(23)下列关于属性的描述正确的是(ABD)
属性是对现实世界中实体特征的抽象
C#中的属性机制只是为了编程提供了便利,并没有提供新的功能
属性不仅是对实体特征的抽象还用来存储具体实体特征值
类似于域,属性可以分为实例属性与静态属性
(24)下列关于委托机制中的描述中正确的是(ACD)
委托是对方法的一种封装,类似于C++中的函数指针
委托的定义和方法的定义类似,只是在前面加了一个delegate关键字,故委托不称为是方法
实例化委托时,传入的参数可以是静态方法,也可以是实例方法
可以用一个委托区封装另一个委托
(25)声明一个委托publicdelegateintmyCallBack(intx);
则用该委托长生的回调方法的原型应该是(B)
voidmyCallBack(intx)
intreceive(intnum)
stringreceive(intx)
不确定
(26)关于事件的描述正确的是(ABCD)
事件既不是值也不是引用,而是由event关键字修饰的一类特殊的委托
事件必需是一种委托
订阅事件就是将某个委托对象指向一个具体的方法
当程序中满足某个条件时调用事件就是引发了事件
(27)关于属性和域的描述错误的是(AC)
都属于类的成员,用来保存类的实例的各种数据信息
设置属性时,可以通过return来读取值,通过value来设置属性值
进行域值的设置时,可以通过get和set访问器来进行
进行属性值的设置时,可以通过get和set访问器来进行
(28)下列关于传值方式的描述中正确的有哪些(ABD)
A传值方式下,形参得到的值仅仅是实参值的一份拷贝,而不是实参本身。
B传值方式下在方法中对形参的改变并不会“反应”到方法外的实参上。
C传值方式下参数一定不能为引用类型,只能是值类型。
D类的构造函数若包含参数,则一定是采用传值方式。
(29)下列关于引用传递方式的描述中正确的是(CD)
A引用传递方式下,参数一定是引用类型,而不能是值类型。
B当形参本身为引用类型时,其面前不加ref关键字也是引用传递方式。
C引用传递方式下,形参或实参只需一个用ref关键字修饰即可。
D引用传递方式的效率较值传递低。
(30)下面程序的输出结果是(B)
UsingSystem;
Publicclasssamp
{Publicintdata=2;
PublicclassClass1
{PublicstaticvoidFun1(sampd)
{d=newsamp();
d.data=20;
PublicstaticvoidFun2(sampd)
{d.data=20;
PublicstaticvoidMain(string[]atgs)
{Sampd=newsamp();
Fun1(d);
Console.WriteLine(d,i);
Fun2(d);
Console.WriteLine(d.i);
A2/2B2/20C20/2D20/20
(31)下列关于方法重载的描述中哪些是正确的(AB)
A构成重载的多个方法必须方法名完全一致。
B构成重载的多个方法应完成相类似的功能。
C两个方法仅有返回值类型不同也可以构成重载关系。
D构成重载的多个方法,它们的参数类型和参数个数必须相同。
(32)下列关于运算符重载的描述中哪些是错误的(ABC)
A运算符重载实质是方法的重载。
B二元运算符可以重载为类的实例方法,其中一个操作数是当前的对象。
C一元运算符只能重载为类的静态方法。
D重载后的运算符可以改变原有的优先级。
(33)下列哪些运算符不可以被重载(C)
A++B%C.D<
=
(34)下列关于继承机制的描述中正确的是(ABC)
A提供继承机制有利于提高软件模块的可重用性及可扩充性。
B继承机制能使面向对象的开发语言能够更准确的描述客观世界,使软件开发方式变简单。
C继承机制使得软件开发过程效率更高。
D继承机制使得软件开发的难度相对增加。
(35)下列关于基类与派生类的描述中哪些的正确的(BC)
A有派生类的存在一定有基类存在,反之不尽然。
B基类和派生类是相对,派生类还可以作为基类派生其他派生类。
CC#中一个基类可以派生出多个派生类。
DC#中一个派生类可以从多个基类继承得到。
(36)下列基类与派生类关系的描述中哪些是正确的(B)
A派生类可以只继承基类中自己想要的成员。
B在派生类中可以自定义成员。
C派生类中继承基类的成员与基类的成员具有相同的存储空间。
D基类的私有访问类型成员不能被派生类所继承。
(37)下列关于虚方法的描述中哪些是正确的(ABC)
A虚方法定义是时除virtual关键字外,其余与非虚方法一样。
B定义虚方法的目的即是为了在当前类的派生类中对其进行重写。
C虚方法的调用要在晕死你个时才能确定。
D在派生类中重写虚方法后,基类中的该方法将被屏蔽。
(38)下列关于密封机制的描述中哪些是正确的(AB)
A如果一个类没有被继承的必要,可以将其定义为密封类。
BSealed关键字除了修饰类外,还可以修饰方法。
CSealed关键字也可以修饰一个非虚方法。
DSealed修饰一个未经重写的虚方法时,编译器会查出语法错误。
(39)下列关于抽象类的描述中哪些是正确的(BD)
A抽象类并不是通过对一组像是对象的抽象而得到的。
B定义抽象类的目的仅仅是为了让其作为基类产生不同的派生类,简化编程。
C一个类既可以是抽象类又可以同时是密封类。
D抽象类不可以实例化对象。
(40)以下描述错误的是(A)
A在C++中支持抽象类而在C#中不支持抽象类。
BC++中可在头文件中声明类的成员而在CPP文件中定义类的成员,在C#中没有头文件并且在同一处横名和定义类的成员。
C在C#中可使用new修饰符显式隐藏从基类继承的成员。
D在C#中要在派生类中重新定义基类的虚函数必须在前面加Overide.
(41)下列关于继承的理解,错误的是(A)
A子类可以从父类中继承其所有的成员。
B无论是否声明,子类都继承自object(System.object)类。
C假如,类M继承自类N,而类N又继承自类P,则类M也继承自类P。
D子类应是对基类的扩展。
子类可以添加新的成员,但不能出去已经继承的成员的定义。
(42)在继承中,当子类的成员声明中,可以声明与父类成员同名的成员,这时,须使用的关键字是(B)
AvoidBnewCbaseDstatic
(43)下列哪些说法是泛型具有的优点(ABC)?
A泛型机制提高可代码的质量与重用型。
B泛型是类型安全的。
C使用泛型有利于提高程序的性能。
DC#中泛型机制是通过模板实现的。
(44)泛型结束包括一下哪些类型(ABCD)?
A基类约束。
B接口约束。
C值/引用类型约束。
D构造函数约束。
(45)泛型的基类约束具有如下哪些功能(AC)?
A它允许在泛型类中使用指定约束类的成员。
B泛型类实例化可以使用任意类型为类型参数赋值。
C基类约束下类型参数的值只能是约束类及其派生类。
D在与其他类型约束混合使用的情况下,基类约束应被放到最后。
(46)下列关于构造函数的描述中正确的是(ABC)?
A它可以与其他约束一起使用,但是必须位于约束列表的末端。
B构造函数约束允许开发人员实例化一个泛型类型的对象。
C构造函数约束要求类型参数必须提供一个无参数的构造函数。
DOffice文件由开发人员创建。
(47)下列关于泛型使用的描述中正确的是(ABCD)
A使用泛型需要引用System.Collections.Generic命名空间。
B泛型类型中可以定义多个参数。
C可以在泛型类型中定义泛型方法、委托以及事件等。
D在程序中可以定义嵌套泛型。
(48)下列关于窗体的描述中那些是不正确的(c)
A窗体可看作是画布,在上面可以进行绘画工具。
B窗体可看作是容器,用来包含放置在其上的不同控件。
C窗体的功能由Form类来实现,在窗体上放置的控件,都是某个窗体类的成员。
D窗体类通常作为基类,通过派生标准窗体类添加新成员,形成一个特定的窗体。
(49)开发基于C#的Windows应用程序需要引用哪个名空间(b)?
ASystem
BSystem.Forms
CSystem.Collections
DSystem.Data
(50)RichTextBox的属性中可以获取或设置被选中的文件,但格式化信息会丢失的是(b)?
ASelectedRtf
BSelectedText
CSelectedProtected
DSelectedBullet
(51)下列描述中哪些是错误的(c)?
A一般方法名是把控件名、下划线和要处理的事件名连续在一起。
B以从ListBox中一次选择一个或多个选项。
CRichTextBox控件是由Text属性来设置文本格式的。
DTabControl控件的属性一般用于控制TabPage容器的外观,特别是正在显示的选择卡。
(52)下列不是Button控件的主要作用的是(b)。
A用某种状态关闭对话框,
B显示标题。
C给对话框上输入的数据执行操作。
D打开另一个对话框或应用程序。
(53)下列哪些控件可以作为容器(bd)?
ALable控件。
BTabConreol控件。
CButton控件。
DGroupBox空间。
(54)C#工具栏中的工具项不包括如下哪些类型(c)?
AButton
BLabel
CProgress
DRichTextBox
(1)floatf=-123.567F;
inti=(int)f.则i的值现在是(-123)。
(2)委托声明的关键字是(delegate)。
(3)当整数a赋值给一个obiect对象时,整数a将会被(装箱)。
(4)要想在输出中换行,可以使用(\n)转义字符。
(5)引用类型的数据将被编译系统存放到(堆内存)中。
(6)数据类型转换分为(隐式转换)和(显式转换)两种。
(7)可以使用字符串类提供的(ToCharArray)方法将字符串转换为字符数组。
(8)设a=true,b=true,c=false,d=5,下列表达式的值(编译错误:
运算符“&
&
”无法应用于“int”和“bool”类型的操作数;
True;
)。
?
(9)优先级最高的运算符是(())。
(10)常用的程序结构包括(顺序、分支、循环)。
(11)能跳出循环的语句有(break;
reuturn;
goto;
continue)
(12)有成语如下:
classMainClass
{publicstaticvoidMain(string[]args)
{intx=3;
booly=false;
if(x==3)if(y)Console.WriteLine(y);
elseConsole.WriteLine(x);
ConsoleReadLine();
该程序输出结果为:
(3)。
(13)foreach循环结构中迭代变量的类型为(集合中元素的类型)。
(14)C#中禅城异常的方式有(在C#语句和表达式的处理过程中激发了某个异常的条件,使得操作无法正常结束,引发异常、抛出异常)。
(15)ArrayList类中将元素按从大到小的顺序排列数组的方法是(Sort())
(16)ArrayListaList=newArrayList()
aList.Add(“123”);
aList.Add(“abc”);
foreach(stringaStrinaList){
if(aStr.Equals(“abc”)){
aList.Remove(aStr);
Console.WriteLine(aStr);
该程序段输出结果为(抛出异常、集合已修改;
)为什么会有这样的结果(可能无法执行枚举操作。
)
(17)Queue类的Peek()方法的作用是(获取头部元素数据)
(18)stack类的Peek()方法与Pop()方法的差异(Peek方法仅获取栈顶元素数据,Pop方法删除栈顶元素)
()能用foreach遍历访问的对象需要实现(System.IEnumerable)接口或声明(实现集合模式)的方法类型
(19)哈希表也称(名值对)
(20)HashTable与SortedList的区别是(SortedList中的Key数组排好序的)
(21)面向对象理论的三大特征(封装、继承、多态)
(22)下列程序的输出结果为:
(编译错误,使用了未赋值的局部变量)
classA
{Publicinta=8;
Publicvoiddisplay()
{System.Console.WriteLine(a);
classB
{StaticvoidMain()
{Amya;
mya.display()}}
(23)类的成员包括(域、属性、方法、委托、事件、接口)
(24)类成员的访问限制符有(publicprivateprotectedinternal)
(25)类的protected类型成员只允许在(当前类)和(其子类)被直接访问。
(26)this关键字仅限于在(构造函数)、(类的方法)和(类的实例)中使用。
(27)域的修饰符包括(publicprivateinternalprotectedreadonly)等
(28)C#中类的域可以(定义时)初始化,也可以以在(构造函数中)初始化
(29)C#中的域如果没有被显式地初始化,其初值为(该类型的默认值)
(30)使用(readonly)关键字可以定义一个类的只读域
(31)C#中属性可以被可以看作是对(域)的封装
(32)使用(virtual)关键字可以声明一个类的虚拟属性
(33)静态属性只能通过(类)类调用
(34)定义一个只读属性并不需要(set)关键字,只需要实现(get)即可
(35)在Set访问器中,除了对域进行赋值外,还可以进行(其他必要的操作,如判断输入是否合法)
(36)方法又称为(功能、函数、服务)等,它们表达相同的意思,只是看待问题的角度不同的称呼。
(37)类的方法声明中,若没有显式指定方法的访问修饰符,则默认为(private)。
(38)在方法的参数列表中定义的参数成为(形参)。
(39)在调用方法时们提供的实参的(实参)与(形参)要与形参一致。
(40)C#支持的参数传递方式有(值传递、引用传递、输出传递、数组传递)。
(41)C#中使用(extern)修饰符来声明在外部实现的方法。
(42)派生类自动拥有基类的所有(属性)和(服务)。
(43)base关键字指代的是(当前类的基类),但只限于在(构造函数)(示例的方法)(示例的方法)中使用。
(44)可以使用(virtual)关键字声明一个方法为虚方法。
(45)下面程序的输出结果为(Class1)
abstractclsssBaseClass
{PublicvirtualvoidMethidA()
{Console.WriteLine(“BaseClass”);
PublicvirtualvoidMethodB()
{}}
ClassClass1:
BaseClass
{PublicvoidMethodA()
{Console.WriteLine(“
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C#