《C#程序设计》习题集Word格式.docx

上传人:b****1 文档编号:4681555 上传时间:2023-05-03 格式:DOCX 页数:48 大小:40.38KB
下载 相关 举报
《C#程序设计》习题集Word格式.docx_第1页
第1页 / 共48页
《C#程序设计》习题集Word格式.docx_第2页
第2页 / 共48页
《C#程序设计》习题集Word格式.docx_第3页
第3页 / 共48页
《C#程序设计》习题集Word格式.docx_第4页
第4页 / 共48页
《C#程序设计》习题集Word格式.docx_第5页
第5页 / 共48页
《C#程序设计》习题集Word格式.docx_第6页
第6页 / 共48页
《C#程序设计》习题集Word格式.docx_第7页
第7页 / 共48页
《C#程序设计》习题集Word格式.docx_第8页
第8页 / 共48页
《C#程序设计》习题集Word格式.docx_第9页
第9页 / 共48页
《C#程序设计》习题集Word格式.docx_第10页
第10页 / 共48页
《C#程序设计》习题集Word格式.docx_第11页
第11页 / 共48页
《C#程序设计》习题集Word格式.docx_第12页
第12页 / 共48页
《C#程序设计》习题集Word格式.docx_第13页
第13页 / 共48页
《C#程序设计》习题集Word格式.docx_第14页
第14页 / 共48页
《C#程序设计》习题集Word格式.docx_第15页
第15页 / 共48页
《C#程序设计》习题集Word格式.docx_第16页
第16页 / 共48页
《C#程序设计》习题集Word格式.docx_第17页
第17页 / 共48页
《C#程序设计》习题集Word格式.docx_第18页
第18页 / 共48页
《C#程序设计》习题集Word格式.docx_第19页
第19页 / 共48页
《C#程序设计》习题集Word格式.docx_第20页
第20页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

《C#程序设计》习题集Word格式.docx

《《C#程序设计》习题集Word格式.docx》由会员分享,可在线阅读,更多相关《《C#程序设计》习题集Word格式.docx(48页珍藏版)》请在冰点文库上搜索。

《C#程序设计》习题集Word格式.docx

A、10fe658bB、febC、10658D、b

5.VisualStudio.Net开发平台是(B)公司提供的.NET应用程序集成开发工具。

A)BorlandB)MicrosoftC)IntelD)IBM

6.在VisualStudio.NET窗口,(B)窗口显示了当前VisualStudio解决方案的树型结构。

A.类视图B.解决方案资源管理器C.资源视图D.属性

7.在C#中,引用命名空间System的正确语句是(A)

A.usingSystem;

B.#import<

System>

C.usesSystem;

D.#include<

二、填空:

1.在C#程序中,程序的执行总是从(Main)方法开始的

2.可使用Console类的(ReadLine)方法,在控制台程序运行时输入信息。

3.数据类型说明符用来说明方法返回值的类型,如果没有返回值,则其类型说明符应为(void)。

4.C#语言源代码文件的后缀名是(.cs)。

5.Console.WriteLine(“RP”);

和Console.Write(“RP”);

的区别是(第一个输出RP后换行,

第二个不换)。

6.引入命名空间的关键字是(using)。

第2章C#2008语法基础

1.装箱是把值类型转换到(c)类型。

a)stringb)charc)引用d)数组

2.下列标识符命名正确的是(d)。

a)C.23b)4boysc)int(8)d)_mypanada

3.下列类型中,哪个不属于引用类型?

(b)。

a)Stringb)doublec)Classd)Delegate

4.在C#中,表示一个字符串的变量应使用以下哪条语句定义?

a)CStringstr;

b)stringstr;

c)Dimstrasstringd)char*str;

5.下列标识符命名正确的是(a)。

a)C_23b)4catsc)&

Yearsd)val(8)

6.如果左操作数大于右操作数,( d )运算符返回false。

a)=b)<

c)<

=d)以上都是

7.下列标识符命名正确的是(c)。

a)exam-1b)Mainc)_monthsd)X.25

8.下面属于合法变量名的是(A)。

a)P_qrb)123mnpc)chard)x-y

9.可用作C#程序用户标识符的一组标识符是(B)。

A.voiddefine+WORDB.a3_b3_123YN

C.for-abcCaseD.2aDOsizeof

10.字符串连接运算符包括&

和(A)。

A.+B.-C.*D./

11.在C#中,下列代码的运行结果是(a)

usingSystem;

classTest

staticvoidMain(string[]args)

string[]strings={"

a"

"

b"

c"

};

foreach(stringinfoinstrings)

Console.Write(info);

}

a)abcb)ac)bd)C

12、在C#中,下列代码的运行结果是(c)

int[]age=newint[]{16,18,20,14,22};

foreach(intiinage){

if(i>

18)

continue;

Console.Write(i.ToString()+””);

a)16,18,20,14,22b)16,18,14,22c)16,18,14d)16,18

13、以下关于C#代码的说法正确的是(d)

for(inti=0;

i<

=3;

i++)

switch(i)

case0:

Console.Write(i.ToString());

break;

case1:

case2:

Console.Write((i*2).ToString());

case3:

Console.Write((i*3).ToString());

a)正确运行,但没有输出

b)输出0149c)输山0123

d)有编译错误,提示case标签不能贯穿到另一个标签,不能运行

14、在c#的条件判断语句switchcase结构中,(d)子句用于指定在找不到匹配项时执行的动作

a)continueb)gotoc)elsed)default

15、C#程序的(D)方法被成为程序的大门,应用程序从这里开始运行

a)main()b)Begin()c)Start()d)Main()

16、在以下C#类中,(b)是控制台类,利用它我们可以方便的进行控制台的输入输出。

a)Controlb)Consolec)Canceld)Write

17、关于C#中的switchcase语句,以下说法正确的是(c)

a)switch判断的表达式可以是整型或者字符型,但不能是字符串型

b)在该语句中最多不能超过5个case子句

c)在该语句中只能有一个default子句

d)在该句中只能有一个break语句

18、在下列C#代码中,程序的命名空间是(a)

namespaceTest{

classProgram{

staticvoidMain(string[]args){

Console.Write(“HelloWorld!

”);

}

a)Testb)Mainc)namespaced)Program

19、C#语言与Java语言一样,也是一种面向对象的语言,C#语言中声明类的关键字是(b)。

a)usingb)classc)namespaced)Main

20、在.NET中,程序员在代码中漏写了一个大括号,这属于(C 

A逻辑错误 

B运行时错误C语法错误 

D自定义错误

21、以下数据类型中不可以使用算术运算运算的是(A)

A. 

boolB. 

charC. 

decimalD. 

sbyte

22、在C#语言中,运算符"

="

和"

=="

的功能分别是( B )

A.关系运算和赋值运算B.赋值运算和关系运算

C.都是关系运算D.都是赋值运算

23.在C#中,关于continue和break,以下说法正确的是( 

B)

Abreak是中断本次循环Bcontinue是中断本次循环,进入一下次的循环

Cbreak是中断本次循环,进入一下次的循环Dcontinue是中断整个循环

1.(+=)运算符将左右操作数相加的结果赋值给左操作数

2.常量通过关键字(const)进行声明。

3、在C#中,进行注释有两种方法:

使用//和使用“/**/”符号对,其中(//)只能进行单行注释。

4、布尔型的变量可以赋值为关键字(true)或(false)。

5.C#通过(装箱)和(拆箱)机制,可以实现值类型和引用类型之间的转换。

6、c#中bool类型只有两个值分别是(true)和(false)。

7、浮点类型包括(float)、(double)和(decimal)。

8、枚举类型使用(enum)关键字声明。

9、当整数a赋值给一个obiect对象时,整数a将会被(装箱)。

10、SubString()函数的功能是(获取子字符串)。

第3章程序流程控制

1.关于如下程序结构的描述中,哪一项是正确的?

(c)

for(;

;

{循环体;

a)执行循环体一次b)不执行循环体

c)一直执行循环体,即死循环d)程序不符合语法要求

2.下列关于异常处理的表述中哪些是正确的(A)?

A无论异常是否抛出,finally子句中的内容都会被执行。

Bcatch字句能且只能出现一次

Ctry字句中所抛出的异常一定能被catch字句捕获

Dtry、catch、finally三个字句必须同时出现,才能正确处理异常

3.一般情况下,异常类存放在什么命名空间中?

(c)。

a)System命名空间b)System.Diagnostics命名空间

c)System.Exception命名空间d)生成异常类所在的命名空间

4.程序运行可能会出现两种错误:

可预料的错误和不可预料的错误,对于不可预料的错误,可以通过C#语言提供的哪个方法来处理这种情形(D)

A。

中断调试B。

逻辑判断C。

跳过异常D。

异常处理

5.异常捕获发生在(B)块中?

A.tryB.catchC.finallyD.throw

6.在C#语言中,下列异常处理结构中有错误的是(a)

a)catch{}finally{}b)try{}finally{}c)try{}catch{}finally{}

d)try{}catch{}

7.C#的数据类型有(B)

A值类型和调用类型B值类型和引用类型

C引用类型和关系类型D关系类型和调用类型

8、C#程序中的类myClass中的成员变量var1如下:

publicclassmyClass{

privateintvar1;

则可以访问var1的有(A)。

a)在myClass类中b)myClass的继承类

c)myClass的父类d)和myClass在同一命名空间下的类

9、以下(c)是用于声明枚举类型的关键字。

a)staticb)structc)enumd)delegate

10、在C#中,某程序在一个类中编写了两个同名的方法,该段代码的运行结果是(C)。

publicclassMusician

publicvoidSong()

Console.WriteLine("

忘记你我做不到"

publicvoidSong(stringmusicName)

Console.WriteLine(musicName);

staticvoidMain()

Musicianmusician=newMusician();

stringmusicName="

还是觉得你最好"

musician.Song("

分手总要在雨天"

}

A)忘记你我做不到B)还是觉得你最好C)分手总要在雨天D)没有输出

1.在C#语言中,实现循环的主要语句有while,do-while,for和(foreach)语句。

2、在C#语言中,可以用来遍历数组元素的循环语句是(foreach)。

3、在异常处理结构中,抛出的异常要用(catch)语句捕捉。

4、在异常处理结构中,对异常处理的代码应放在(catch)块中。

5、在do-while循环结构中,循环体至少要执行

(1)次。

6、在C#中,可以通过(throw)语句无条件抛出异常。

7、在循环结构中,continue语句的作用是(结束本次循环,继续下一次循环)。

8、在循环执行过程中,希望当某个条件满足时退出循环,使用(break)语句

9、(try)块封装了可能引发异常的代码。

10、在switch语句中,(default)语句是可选的,且若存在,只能有一个。

11、结构化的程序设计的3种基本结构是(顺序结构),(选择结构)和(循环结构)。

12、在C#中,下列for循环的运行结果是(12345)。

for(inti=0;

i<

5;

i++)

{

Console.Write(++i);

13、在C#中,下列代码的运行结果是(654321)。

for(inti=6;

i>

0;

i--)

Console.Write(i--);

14、在C#中,下列代码的运行结果是(246)。

int[]price=newint[]{1,2,3,4,5,6};

foreach(intpinprice)

if(p%2==0)

Console.Write(p);

15、下面程序段执行后,sum的值为11

inti,sum=0;

for(i=0,sum=0;

=10;

i++,sum++);

16、下面循环语句的执行次数为6次。

i+=2){}

第4章数组与集合

1.数组pins的定义如下:

int[]pins=newint[4]{9,2,3,1};

则pins[1]=(b)

a)1b)2c)3d)9

2.有说明语句double[,]tab=newdouble[3,4];

那么下面叙述正确的是(c)。

a)tab是一个数组维数不确定的数组,使用时可以任意调整

b)tab是一个有两个元素的一维数组,它的元素初始值分别是3,4

c)tab是一个二维数组,它的元素个数一共有12个

d)tab是一个不规则数组,数组元素的个数可以变化

3.在数组中对于for和foreach语句,下列那些选项中的说法不正确?

a)foreach语句能使你不用索引就可以遍历整个数组

b)foreach语句总是从索引1遍历到索引Length

c)foreach总是遍历整个数组

d)如果需要修改数组元素就必须使用for语句

4.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的(C)。

A.int[]arr=newint[10,20]

B.int[]arr=intnew[10,20]

C.int[,]arr=newint[10,20]

D.int[,]arr=newint[20;

10]

5.下列语句创建了(D)个string对象

string[,]strArray=newstring[3,4]

A.0B.3C.4D.12

1.(Array)是所有数组的基类。

2.System.Array有一个(Length)属性,通过它可以获取数组的长度。

4、集合类是由命名空间(System.Collections)提供。

5、数组定义与赋值语句如下:

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

则a[2]的值是(3)

6、下列程序段执行后,a[4]的值为(4)。

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

a[4]=a[a[2]];

7.在Array类中,可以对一维数组中的元素进行排序的方法是(Sort)。

8、声明一个10行20列的二维整形数组的语句为:

(int[,]a=newint[10,20])。

第5章C#面向对象程序设计基础

1.静态构造函数只能对(a)数据成员进行初始化。

a)静态b)动态c)实例d)静态和实例

2.在C#的类结构中,class关键字前面的关键字是表示访问级别,下面哪个关键字表示该类只能被这个类的成员或派生类成员访问?

(d)。

a)publicb)privatec)internald)protected

3.下列关于C#面向对象应用的描述中,哪项是正确的?

a)接口像类一样,可以定义并实现方法

b)声明为sealed的类不能被继承

c)abstract方法在声明时必须实现方法的具体内容

d)派生类是基类的扩展,派生类可以添加新的成员,也可去掉已经继承的成员

4.在类的定义中,类的(b)描述了该类的对象的行为特征。

a)类名b)方法c)所属的命名空间d)私有域

5.面向对象三个基本原则是(c)。

a)抽象,继承,派生b)类,对象,方法

c)继承,封装,多态d)对象,属性,方法

6.在C#编程中,访问修饰符控制程序对类中成员的访问,如果不写访问修饰符,类的默认访问类型是(b)。

ApublicBprivateCinternalDprotected

7.在C#中创建类的实例需要使用的关键字是(C)

A:

thisB:

baseCnewD:

as

8.在C#语言中,以下关于继承的说法错误的是(B)。

A.一个子类不能同时继承多个父类B任何类都是可以被继承的

C.子类继承父类,也可以说父类派生了一个子类D.Object类是所有类的基类

9.以下关于C#中的构造函数说法正确的是(B)。

A.构造函数有返回值B.构造函数可以有参数

C.一般情况下,构造函数总是private类型的D.构造函数可以通过类的实例调用

10.在C#中,如果类C继承自类B,类B继承自类A,则以下描述正确的是(d)。

a)C不能继承了A或B中的成员

b)C只继承了B中的成员

c)C只继承了A中的成员

d)C不仅继承了B中的成员,同样也继承了A中的成员

11.派生类访问基类的成员,可使用(A)关键字

A.baseB.thisC.outD.external

12.在C#中,一个类(B).

A.可以继承多个类B.可以实现多个接口

C.在一个程序中只能有一个子类D.只能实现一个接口

13.以下说法正确的是( 

A.构造函数名不必和类名相同B.一个类可以声明多个构造函数

C.构造函数可以有返回值D.编译器可以提供一个默认的带一个参数的构造函数

14、以下说法不正确的是( 

A.一个类可以实现多个接口B.一个派生类可以继承多个基类

C.在C#中实现多态,派生类中重写基类的虚函数必须在前面加override

D.子类能添加新方法

15.下列关键字中哪些不能作为修饰类(C)

A:

sealedB:

abstractC:

overrideD:

public

1.接口只能定义方法,实现要由(类)完成。

2、任何事物都是(对象),它可以是现实世界中的一个物理对象,可以是抽象的概念或规则。

3.如果一个类包含一个或多个抽象方法,它是一个(抽象)类。

4.(构造函数)提供了对对象进行初始化的方法,而且它在声明时没有任何返回值。

5.使用关键字(abstract)声明抽象类。

6.面向对象语言都应至少具有的三个特性是封装、(继承)和多态。

7.在实例化类对象时,系统自动调用该类的(构造函数)进行初始化。

8.类的静态成员属于(类)所有,非静态成员属于类的实例所有。

9.在声明类时,在类名前(abstract)修饰符,则声明的类只能作为其他类的基类,不能被实例化。

10.(类)是具有相同或相似性质的对象的抽象。

11、(属性)是对现实世界中事物特征进行的抽象。

12、(封装)是指使用抽象数据类型将数据和基于数据的操作包装在一起。

13、C#是一种面向(对象)的语言。

14、在类的成员声明时,若使用了(protected)修饰符则该成员只能在该类或其派生类中使用。

15、类的方法声明中,若没有显式指定方法的访问修饰符,则默认为(private)。

第6章域、属性与事件

1.下面代码的输出结果是(d)。

intx=6;

inty=x++;

Console.WriteLine(y);

y=++x;

a)66b)79c)66d)68

2、当month等于6时,下面代码的输出结果是(c)。

intdays=0;

switch(month)

days=28;

case4:

case6:

case9:

case11:

days=30;

default:

days=31;

a)0b)28c)30d)31

3、下面代码运行后,s的值是(B)。

ints=0;

for(inti=1;

100;

{

if(s>

10)

if(i%2==0)

s+=i;

a)20b)12c)10d)6

4、下面代码的运行结果是(D)

staticvoidMain(string[]args)

intnum1=34;

intnum2=55;

Increase(refnum1,num2);

{0}和{1}"

num1,num2);

Console.ReadLine();

privatestaticvoidIncrease(refintnum1,intnum2)

num1++;

num2++;

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

当前位置:首页 > PPT模板 > 动态背景

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2