C#总复习题Word格式文档下载.docx

上传人:b****6 文档编号:17521256 上传时间:2022-12-07 格式:DOCX 页数:29 大小:108.80KB
下载 相关 举报
C#总复习题Word格式文档下载.docx_第1页
第1页 / 共29页
C#总复习题Word格式文档下载.docx_第2页
第2页 / 共29页
C#总复习题Word格式文档下载.docx_第3页
第3页 / 共29页
C#总复习题Word格式文档下载.docx_第4页
第4页 / 共29页
C#总复习题Word格式文档下载.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

C#总复习题Word格式文档下载.docx

《C#总复习题Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《C#总复习题Word格式文档下载.docx(29页珍藏版)》请在冰豆网上搜索。

C#总复习题Word格式文档下载.docx

(A)0(B)(C)(D)

16.C#语言中,字符串常量@"

123\n456"

的长度(有效字符个数)是(C)。

(A)6(B)7(C)8(D)9

17.为了将字符串str=“123,456”转换成整数123456,应该使用以下哪条语句(A)

Num=(str);

Num=(int);

Num=(int)str;

Num=(str,在程序中如果要使用系统保留字(关键字)作为自定义标识符,必须使用字符(A)作为引导符。

(A)@(B)$(C)#(D)~

19.关于C#程序的书写,下列不正确的说法是____。(D)

A.区分大小写

B.一行可以写多条语句

C.一条语句可写成多行

D.一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法

20.下面的C#表达式中,描述了数学关系x≥y≥z的是(B)。

(A)(x>

=y)AND(y>

=z)(B)(x>

=y)&

&

(y>

=z)

(C)(x>

=y>

=z)(D)(x>

21.执行C#语句序列:

inti;

for(i=0;

i++<

4;

);

后,变量i的值是(A)。

(A)5(B)4(C)1(D)0

22.以下程序的输出结果是__(C)__。

Usingsystem;

ClassExample1

{

PublicStaticvoidmain(){

inta=5,b=4,c=6,d;

("

{0}"

d=a>

b(a>

ca:

c):

b);

}

}

.4CD.不确定

23.写出以下程序的运行结果。

usingSystem;

classTest

{

publicstaticvoidMain()

{

intx=5;

inty=x++;

(y);

y=++x;

答案:

5

7

24已知a,b,c的值分别是4,5,6,执行下面的程序段后,判断变量n的值为____。(C)

if(c<

b)N=a+b+c;

elseif(a+b<

c)N=c-a-b;

elseN=a+b;

B.-3C.9

25下面对i值的输出结果说法正确的是_____.(A)

namespaceAnswer

classProgram

staticvoidMain(string[]args)

intido{i++;

}while(i<

5)

(“i值的为:

{0}”,i)}}}

的值为:

5的值为:

6

7的值为:

8

26)以下程序段的输出结果是A

A1B30C1-2D死循环

intx=3;

do

{("

x-=2);

while(!

(--x>

=0));

27)以下程序段的输出结果是C

A12B15C20D25

inti,j,m=0;

for(i=1;

i<

=15;

i+=4)

for(j=3;

j<

=19;

j+=4)m++;

m={0}"

m);

();

28)以下程序段的输出结果是B

A10B9C10D9

9898

8787

6

intn=10;

while(n>

7)

{n--;

n);

}

29.下面所列选项中,能够正确定义具有10个数据元素一维整型数组a的是(A)。

(A)int[]a=newint[10];

(B)inta[10];

(C)int[]a=int[10];

(D)int[]a=int(10);

30.下面所列选项中,不能正确定义并初始化一维数组b的是(D)。

(A)double[]b=newdouble[5]{1,2,3,4,5};

(B)double[]b=newdouble[]{1,2,3,4,5};

(C)double[]b={1,2,3,4,5};

(D)double[]b=new{1,2,3,4,5};

31.始化一维数组的语句,指出其中正确的是____。(D)

arr1[]={6,5,1,2,3};

[]arr1=newint[];

[]arr1=newint[]{6,5,1,2,3};

[]arr1;

arr1={6,5,1,2,3};

32.下面所列选项中,能够正确定义2行3列二维整型数组a的是(B)。

(A)int[][]a=newint[2][3];

(B)int[,]a=newint[2,3];

(C)int[2][3];

(D)int[,]a=int[2,3];

33.有定义语句:

int[,]a=newint[5,6];

则下列正确的数组元素的引用是____。(C)

(3,4)(3)(4)[3][4][3,4]

34.在C#语言中,表示数组长度属性的关键字是(D)。

(A)Len(B)Size(C)Long(D)Length

35.以下程序的输出结果是:

(C)ClassExample1

PublicStaticvoidmain()

int[]a=newint[10];

for(i=9;

i>

=0;

i--)a[i]=10-i;

{0},{1},{2}"

a[2],a[5],a[8]);

}}

5,8,4,1

5,2,6,9

36.下列的数组定义语句,正确的是____。(D)

a[]=newint[5]{1,2,3,4,5}

[,]a=newinta[3][4]

[][]a=newint[3][];

[]a={1,2,3,4};

37.以下所列的个方法头部中,正确的是___。_(C)

play(vara:

Integer,varb:

integer)

play(inta,b)

play(inta,intb)

play(aasinteger,basinteger)

38.函数调用不可以(D)。

A.出现在一个表达式中

B.出现在执行语句中

C.作为一个函数的实参

D.作为一个函数的形参

39.以下正确的描述是(B)。

A.函数的定义可以嵌套,函数的调用不可以嵌套

B.函数的定义不可以嵌套,函数的调用可以嵌套

C.函数的定义和函数的调用均可以嵌套

D.函数的定义和函数的调用均不可以嵌套

40.若用数组名作为函数调用的实参,传递给形参的是(A)。

A.数组的首地址B.数组中第一个元素的值

C.数组全部元素的值D.数组元素的个数

41.以下错误的描述是(D)。

A.被调用函数中可以不用return语句

B.被调用函数中可以用多个return语句

C.被调用函数中,如果有返回值,就一定要有return语句

D.被调用函数中,一个return语句可返回多个值给调用函数

42.在面向对象程序设计的概念中,对类(class)的描述,错误的是(D)。

(A)类(class)是一组具有相同数据结构和相同操作的对象的集合

(B)类(class)用来定义对象可执行的操作

(C)类(class)是创建对象实例的模板,对象是类的一个实例

(D)当应用程序通过类(class)创建一个对象时,该对象就是一个窗口

43.在默认的情况下,省略的类访问修饰符是(A)

(A)private(B)public(C)protected(D)internal

44.在下面的类声明中,属于私有字段的是(D)

classPerson

publicstringname;

publicstringsex;

privateintage;

doubleweight;

(A)namesex(B)age(C)weight(D)ageweight

45.类的属性中,能够修改字段值的代码块是(B)

(A)get代码块(B)set代码块(C)find代码块(D)modification代码块

46.下列类定义代码,当用来声明对象car,并用Carcar=newCar();

实例化后,可以通过car对象直接赋值的字段是(D)。

publicclassCar

publicstringtype;

stringNo;

privateintheavy;

doublespeed;

protectedstringowner;

publicstringprice;

privatestringcolor;

(A)typeNo(B)heavyowner(C)typeownerprice(D)typeprice

47.类的以下特性中,可以用于方便地重用已有的代码和数据的是().

A.多态B.封装C.继承D.抽象

答案:

C

48.在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成____。(C)

方法方法方法方法

60.假定AA为一个类,a为该类公有的数据成员,x为该类的一个对象,则访问x对象中数据成员a的格式为(D)。

A.x(a)B.x[a]C.x->

aD.

49.假定AA为一个类,a为该类私有的数据成员,GetValue()为该类公有函数成员,它返回a的值,x为该类的一个对象,则访问x对象中数据成员a的格式为(D)。

A.B.()C.x->

GetValue()D.()

50.假定AA为一个类,a为该类公有的数据成员,若要在该类的一个成员函数中访问它,则书写格式为(A)。

A.aB.AA:

:

aC.a()D.AA:

a()

51.Label控件的边框样式由(B)属性决定。

(A)FlatStyle(B)BorderStyle(C)BackColor(D)AutoSize

52

(A)List(B)ListIndex(C)ListCount(D)ItemData

53.使用(D)方法,可以把一个字符串数组的内容全部添加到ListBox控件中。

(A)Add()(B)Remove()(C)Clear()(D)AddRange()

54.访问组合框的(A)属性,可以获得用户在组合框中输入或选择的数据。

(A)Text(B)ItemData(C)SelectedIndex(D)SelectedValue

二、填空题

#语言是一种B面向对象的、全新的程序设计语言,是微软.NET公共语言运行环境中内置的核心程序设计语言。

2..在定义C#语言的标识符构成时,G需要区分字母符的大小写形式。

备选项:

3..C++源程序文件的默认扩展名为(cpp)。

4.由C++源程序文件编译而成的目标文件的默认扩展名为(obj)。

5..C++程序从上机到得到结果的几个操作步骤依次是(_编辑、_编译、_连接__、运行)。

6.C++语言是在___C______语言的基础上发展起来的。

7.行尾使用注释的开始标记符为___使控件是否可以对用户交互作出响应的属性是_____Enabled_____。

9.控制控件是否显示的属性是_______Visible___。

10若要在文本框中输入密码,常指定______PasswordChar____属性。

11.若某复选框某时刻CheckState属性的值为Indeterminate,则其属性Checked的值为Unchecked。

12.用于控制ListView控件中的各项显示方式的属性是__View____。

13.一个完整程序中必须有一个名为__Main______的函数。

14一个函数的函数体就是一条____复合_____语句。

15.在C#程序中,程序的执行总是从____Main______方法开始的。

16、在C#中,bool类型只有两种值,分别是___true_______和___false_______。

17、在C#中,使用____const______关键字声明符号常量。

18.设x为int型变量,请写出描述“-10<

=x<

=10”的C#语言表达式_-10<

=x&

x<

=10__。

19.若k为int整型变量且赋值15.请写出k++后表达式的值A)__15______和变量值B)___16___.

20."

10<

x≤30"

的C语言表达式是___X>

=10&

X<

=30________。

21.C#语言中的关系运算符按优先级分别是____<

<

=>

>

=___,__!

===_.

22.将下列数学式改写成C#语言的关系表达式或逻辑表达式A)_a==b||a<

_x<

-4||x<

4___.

Aa=b或a<

cB|x|>

4

#语言中,数组属于引用数据类型,即数组内容所占用的存储单元是一组连续的内存区域C,数组变量的值是这组存储单元的起始地址。

24.无论是一维数组、多维数组、还是不规则数组,在C#语言中对数组的定义都分为两个步骤:

定义数组变量;

H数组变量初始化。

25.数组在定义时可以进行初始化,即在定义数组时为其指定初始值。

C#语言中规定,初始化值序列中的数据个数F必须与数组的长度完全一致。

26.数组元素在程序中使用下标变量的形式表示。

作为变量个体而言,下标变量与它同类型的普通变量(简单变量)是等价的,即数组的下标变量和普通变量的A用法相同。

27.面向对象的程序设计允许用I实体或对象的思想方法来分析和设计应用程序,从而使软件开发过程更接近人类的思维过程。

28.当应用程序通过类创建一个对象时,用户只要使用对象的B属性(property)和方法进行相应的操作,而不必关心其内部是如何实现的,这样就有助于实现程序结构的模块化和代码重用。

29.如果访问修饰符使用Apublic,则将类的访问类型指定为公共的,被声明的类可以在其它的项目中使用。

30.类的属性通常属性包括Dget代码块和set代码块访问或修改字段的值。

31.类的成员包括J数据成员和方法成员,使用属性可以实现对数据成员的良好封装。

32、面向对象的语言具有___封装性、_____继承_____性、____多态______性。

33.在C#中,在实例化类对象时,系统自动调用该类的__构造函数____进行初始化。

8.在C#中,当一个对象离开它的作用域或不再被使用时,系统将会自动调用类的___析构函数___。

34、在C#中,类的静态成员属于___类______所有,非静态成员属于类的实例所有。

35一般将类的构造方法声明为__public或公有_____访问权限。

如果声明为private,就不能创建该类的对象。

36.如果声明属性时没有明确指定其可访问性,则会拥有默认值private。

在继承的情形中,对象同时是派生类和该派生类的所有基类的实体。

37..多态是指两个或多个属性不同类的对象,对同一个消息做出不同响应的能力。

38..一个类可同时扩展单个基类,和实现一个或多个接口。

39.在使用继承时,原始的类被称作基类,新类被称作派生类。

40..C#定义了五种访问修饰关键字:

public、private、protected、internal、protectedinternal。

三.简答题:

1.简述private、protected、public修饰符的访问权限。

private:

私有成员,在类的内部才可以访问。

protected:

保护成员,该类内部和继承类中可以访问。

public:

公共成员,完全公开,没有访问限制。

2.C#中的接口和类有什么异同。

抽象类是一个不完全的类,类里面有抽象的方法,属性,也可以有具体的方法和属性,需要进一步的专业化。

但接口是一个行为的规范,里面的所有东西都是抽象的!

一个类只可以继承一个基类也就是父类,但可以实现多个接口。

3.面向对象的思想主要包括什么

封装:

用抽象的数据类型将数据和基于数据的操作封装在一起,数据被保护在抽象数据类型内部。

继承:

子类拥有父类的所有数据和操作。

多态:

一个程序中同名的不同方法共存的情况。

4.什么是对象

所谓对象,是一种将状态和行为合成到一起的软件构造,用来描述真是世界的一个对象。

5.什么是多态

多态是指两个或多个属于不同类的对象,对同一个消息(方法调用)做出不同响应的能力。

6.override与重载的区别

override与重载的区别。

重载是方法的名称相同。

参数或参数类型不同,进行多次重载以适应不同的需要

Override是进行基类中函数的重写。

为了适应需要。

7如何区别重载方法

不同的参数类型,不同的参数个数,不同的参数顺序

8.什么是抽象类

抽象类是含有一个或多个抽象方法的类,抽象类不能实例化。

9.一个C#控制台应用程序主要由哪几个部分构成

(1)导入其他系统预定义元素部分;

(2)命名空间;

(3)类;

(4)方法(主方法、事件响应处理过程)

10.C#程序中可以使用哪些书写注释的方法它们分别适合用于什么场合

C#中的注释方法有三种:

(1)单行注释在一个语句行上,用双斜杠“判断题

1、c#面向对象的程序语言有继承性和多态性还有封装性答案对

2、接口不能通过方法来实现答案对

3、c#面向对象的程序语言特点:

代码好维护,安全,隐藏信息答案对

4、通过提供对抽象类申明的所有抽象方法的非抽象实现,就能从抽象类派生出新类答案对

5、继承是一种强大的机制,他通过指出新旧类之间的不同之处,在旧类的基础上定义一个新类

答案对

6、C#支持多重继承。

(no)

7、一切类的基类是object类,并且可以直接继承它。

(yes)

8、抽象类里的方法一定不能含有实现。

9、C#中一个类可以实现多个接口。

10、接口中可以定义方法,还可以定义属性。

11、静态方法访问类的attribute时,可以访问类的所有属性。

12、静态方法不能被派生类覆载。

13、静态方法不能被声明为抽象方法。

14、在C#中,类的构造函数和析构函数都不能被继承。

(√)

15、在C#中,定义一个类时,声明了一个构造函数,则编译器不会再提供默认的构造函数。

16、在C#中,在类的属性声明中,只有get访问器表明属性只能读出而不能写入。

17、C#不支持运算符重载。

(×

18、C#不支持私有继承和保护继承。

19、在C#中,定义一个类时,用户不可以声明一个析构函数,因为析构函数是由编译器自动生成的。

20、C#中抽象方法是隐式的虚方法,实现抽象方法用关键字override。

五.阅读程序,写结果:

1.运行以下程序段,结果是(150)

doublek,t;

t=0;

for(intn=1;

n<

=10;

n++)

{

for(k=1;

k<

=5;

k++)

t=t+k;

(t);

2.运行以下程序段,结果是(25)

classSumw

staticvoidMain()

inti=1,sum=0;

while(i<

=10)

sum+=i;

i+=2;

=“总和为:

”+();

3.下面代码的输出结果是(57)。

intx=5;

inty=x++;

(y);

y=++x;

4如果x=35,y=80,下面代码的输出结果是(报警)

if(x<

-10||x>

30)

i

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

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

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

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