C#与.NET程序设计试卷A卷+答案.docx
学年度第一学期期末考试C#与NET程序设计(八)卷专业学号班级姓名一、单选题(每题2分,共40分)1 .在C#中,表示一个字符串的变址应使用以下哪条语句定义?A. CStringstr;B. stringstr:C. DimstrasstringD. char*str:2 .C#中MyC1.aSS为一自定义类,其中有以卜.方法定义:pub1.icvoidHe1.1.o()(,使用以下语句创建了该类的对象,并使变量obj引用该对象,那么,访问类MyC1.ass的He1.1.o方法正确的是:MyC1.assObj=newMyC1.assO;A. obj.He1.1.oO:B. obj:Ife1.Io();C. MyC1.ass.He1.1.oO;D. MyC1.ass:He1.1.oO;3 .分析下列程序中类MyC1.ass的定义c1.assBaseC1.ass,:pub1.icinti;',c1.assMyC1.ass:BaseC1.asspub1.icnewinti:则下列语句在Conso1.e上的输出为.MyC1.assy=newMyC1.assO:BaseC1.assx=y:x.i=100:Conso1.e.Write1.ineC(O),1”,x.i,y.i);/(提示:注意类MyC1.ass中的new关键字)A.0,0B. 100,100C. 0,100D. 100,O4 .在定义类时,如果梏望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成,A. sea1.ed方法B. pub1.ic方法C. virtua1.方法I),override方法5 .为了将字符串Str="123,456”转换成整数123456,应该使用以下哪条语句?.intXum=int.Parse(str);B. intNum=str.Parse(int);C. intNum=(int)str:D. intNum=int.Parse(str,G1.oba1.ization.NuinbcrSty1.cs.A1.IouThousands);6 .在C#语言中,卜列能铭作为变量名的是,A. ifB. 3abC. a_3bD. a-bc7 .以下程序的输出结果是,Usingsystem:C1.assExanp1.e1.(Pub1.icStaticvoidmain()Inta=5,b=4,c=61.d:Conso1.e.Write1.ine(4'01,d-a>b?(a>c?a:c):b):.5B. 4C. 6D,不确定8 .能正确表示逻辑关系“a>=10或a<=0w的C*语言表达式是一A. a>=1.ora<=0B. a>=ia<=0C. a>=10三a<=0D. a>=10a<=09 .以下关于for循环的说法不正确的是.A. for循环只能用于循环次数已经确定的情况B. for循环是先判定表达式,后执行循环体语句C. for循环中,可以用break语句跳出循环体D-for循环体语句中,可以包含多条语句,但要用花括号括起来。10 .有如下程序Usingsystem;C1.assExamp1.e1.(Pub1.icStaticvoidmainO(Intx=1.,a=0,b=0:Switch(x)(Case0:b+÷,break;Case 1: a+,break;Case 2: a+,b+:break:IConso1.e.Write1.ine(wa=10,b=(1.I',a,b):)的输出结果是A. a=2,b=1.B. a=1.,b=1.C. a=1.,b=0D. a=2,b=2H.关于Cm开言的方法,下列叙述中正确的是.A.方法的定义不能嵌套,但方法调用可以嵌套B.方法的定义可以嵌套,但方法调用不能嵌套C.方法的定义和调用都不能嵌套D.方法的定义和调用都可以联套12,下列程序的结果是:Usingsystem;C1.assEXaInPIe1.(Static1.ongfib(intn)(if(n>2)return(fib(n1.)+fib(n-2);E1.sererurn(2):Pub1.icStaticvoidmain()Conso1.e.Write1.ine(u0,fib(3):A. 2B. 4C. 6D. 813.调用重载方法时,系统根据来选择具体的方法.A.方法名B.参数的个数和类型C.参数名及参数个数D.方法的返回值类至14 .下列的不是构造函数的特征.A.构造函数的函数名和类名相同B构造函数可以垂载C.构造函数可以带有参数0.可以指定构造函数的返回值15 .已知类B是由类A继承而来,类A中有一个为M的非虚方法,现在希望在类B中也定义一个名为M的方法,若希望编译时不出现警告信息,则在类B中声明该方法时.应使用方法.A. staticB. newC. overrideD. virtua1.二、多选题(每题4分,共40分)16 .以下介法的十六进制数是().A、OxffB、OXabcC,0x01D,0X9X17 .定义语句.intx.y.若要通过SCanf(飞d.%d”,&x,&y);语句使变量X得到数值I1.变量y得到数值12,下面四组输入形式中,正确的有()。Ax1112回车B、11.空格12回车C、11.12回车)D、11回车12回车18 .以下对C语言中的函数描述不正确的有()-A、可以概套定义,不可以嵌套调用B、不可以故套定义,可以联套谢用Co可以嵌套定义,也可以嵌套调用1)、嵌套定义和嵌套调用都不允许19著a,b.c,d都是int型变童且初值为0,以卜选项中正确的赋值语句是(),A、a=b=c=d=100,B、d+.C、 c+b;D、 d=(C=22)-(b+)20.以下说法正确的是()。A、C普甚里有字符小变量8. C语言里没有字符串变出C、C语言里有字符变量D、C语言里设字符变量21在定义inta23之后,对a的引用正确的有()。A、a1.0121B、aj1.3C、a1.21111)、a2022以卜用户标识符,其中台法的是()。A、 returnB、f2_G3C、A33D、abc23、关于whi1.e语句与do-whi1.e语句,以卜一正确的是().A、whiIe是当型结构B、do-whi1.e是直到型结构3两者有区别D、两者无区别24.正确的if语句形式是().Axif(x>yMx1.=y):Ikif(x=y)x+=y;C、if(x1.=y)scanf("v%d,&x)eisesca11f(*%d,&y);D、if(x<y)(x+:y+)25.能正确表示逻辑关系:"a210”的C语言表达式是().A、a10B、 1.(a<10)C、 a>=10D、 a<1.三、判断题(对的选-A",错的选“B”,每题2分,共20分)26.在同一行上可以书写多条的句,每条语句间用分号分隔。()27在数据类型转化时,只能通过类型转换关铤字或Convert类实现,()28接口与类同样是面向对象程序设计的核心,是创建对象的模版.()29、委托是将方法作为参数传递给另一方法的一种数据类型。事件与委托没有关系。()30可以重写私有的虚方法。()31 .使用Directory类的MoveO方法可以出除文件.()32 .不熊指定接口中方法的修饰符。()33 .在定义数组时不允许为数组中的元素赋值。()34 .在C#中,所有类都是直接或间接地继承System.Object类而得来的。()35 .如果要实现田写,在墓类的方法中必须使用Vir1.UH1.关键字,在派生类的方法中必须使用OVerrideS关键字。()A卷答案(标准答案及评分标准)一、单项选JWi(从下死各题的四个备选答案中选出一个正确答案,选情或未选者,此题不得分,每小题2分,共40分,)二、多项选舞Je(从下列各题四个冬选答案中选出正确答案,答案选错者,该题不得分,每小题4分,共40分.)题号1617181920答案BCDABDBC题号2122232425答案ACBDABCABDIJC三、判断题(你认为下死命题是正确的,就在题后方括号内加-A-,错提的加-B*.每小题判断2分,共20分)版号26272829303132333435答案BBBA