C#1-6章习题_答案_第1页
C#1-6章习题_答案_第2页
C#1-6章习题_答案_第3页
C#1-6章习题_答案_第4页
C#1-6章习题_答案_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、c#g题练习(1-6章)1. 在Visual窗口中,在窗口中可以察看当前项目的类和类型的层次信息(B)A.解决方案资源管理器B.类视图C.资源视图D.属性2. C#中每个int类型的变量占用个字节的内存?(C)3. 在C#中,表示一个字符串的变量应使用以下哪条语句定义?(B)str;str;strasstring*str;4. 在C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句?(A)theMoney;theMoney;theMoney;theMoneyasdouble5. C#中,新建一字符串变量str,并将字符串"Tom'sLivingR

2、oom"保存到串中,则应该使用下列哪条语句?(A)str="Tom'sLivingRoom"str="Tom'sLivingRoom"str("Tom'sLivingRoom");str("Tom"sLivingRoom");#中MyClass为一自定义类,其中有以下方法定义:publicvoidHello()使用以下语句创建了该类的对象,并使变量obj引用该对象,那么,访问类MyClass的Hello方法正确的是:(A)MyClassobj=newMyClass();分

3、析下列C#语句,注意类MyClass没有访问修饰符:namespaceClassLibrary1classMyClasspublicclasssubclassinti;若必须为类MyClass添加访问修饰符,并使MyClass的可访问域保持不变,则应选择?(D)8.分析下列程序:publicclassclass4privatestring_sData=""publicstringsDataset_sData=value;在Main函数中,在成功创建该类的对象obj后,下列哪些语句是合法的?(A)="Itisfunny!"=100;分析下列程序中类MyCl

4、ass的定义classBaseClasspublicinti;classMyClass:BaseClasspublicnewinti;则下列语句在Console上的输出为.(D)MyClassy=newMyClass();BaseClassx=y;=100;("0,1",;在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成?(C)方法方法方法方法11. 类MyClass中有下列方法定义:publicvoidtestParams(paramsintarr)("使用Params参数!");publicv

5、oidtestParams(intx,inty)("使用两个整型参数!");请问上述方法重载有无二义性?若没有,则下列语句的输出为.(B)MyClassx=newMyClass();(0);(0,1);(0,1,2);A.有语义二义性;B.使用Params参数!使用两个整型参数!使用Params参数!C.使用Params参数!使用Params参数!使用Params参数!D.使用Params参数!使用两个整型参数!使用两个整型参数!12. C#程序中,可使用try.catch机制来处理程序出现的错误?(B)A.语法B.运行C.逻辑D.拼写13. C#中,在方法MyFunc内部

6、的try.catch语句中,如果在try代码块中发生异常,并且在当前的所有catch块中都没有找到合适的catch块,则(D)运行时忽略该异常运行时马上强制退出该程序运行时继续在MyFunc的调用堆栈中查找提供该异常处理的过程抛出一个新的“异常处理未找到”的异常14. 在C#中,下列哪条语句能创建一个具有3个初始值为""的元素的字符串数组?(C)StrList3("");3StrList="","",""StrList="","",""

7、StrList=newstring3;15. 下列语句创建了多少个string对象?(D)string,strArray=newstring34;16. 接口Animal定义如下:publicinterfaceAnimalvoidMove();则下列抽象类的定义中,哪些是不合法的?(D)classCat:AnimalabstractpublicvoidMove();classCat:AnimalvirtualpublicvoidMove()("Move!");classCat:AnimalpublicvoidMove()("Move!");classCa

8、t:AnimalpublicvoidEat()("Eat!");17. 关于结构类型,下列说法哪些是正确的?(A)A. 结构是值类型B. 结构中不允许定义带参数的实例构造函数;C. 结构中不允许定义析构函数D.结构中可以定义成员方法,但是方法内不能使用this指针18.下列语句的输出是?(B)doubleMyDouble=9;("0:E",MyDouble);A.$123,456,已知在某WindowsForm应用程序中,主窗口类为Form1,程序入口为静态方法?如下所示:publicclassForm1:newForm1().Open();D.(new

9、Form1().Run();20. 用鼠标右击一个控件时出现的菜单一般称为:(C)A.主菜单B.菜单项C.快捷菜单D.子菜单21. 变量openFileDialog1引用一个OpenFileDialog对象?为检查用户在退出对话框时是否单击了“打开”按钮,应检查()的返回值是否等于;(A)C#程序中,为使变量myForm引用的窗体对象显示为对话框,必须:(A)A. 使用方法显示对话框B. 将myForm对象的isDialog属性设为trueC. 将myForm对象的FormBorderStyle枚举属性设置为FixedDialogD.将变量myForm改为引用类的对象23. WindowsFo

10、rm应用程序中,要求下压按钮控件Button1有以下特性:正常情况下,该按钮是扁平的,当鼠标指针移动到它上面时,按钮升高?那么,在程序中,属性的值应设定为:(B)在类的定义中,类的描述了该类的对象的行为特征?(A)A.类名B.方法C.所属的名字空间D.私有域25. 以下类MyClass的属性count属于属性.(A)classMyClassinti;intcountgetreturni;A.只读B.只写C.可读写D.不可读不可写26. 类MyClass中,下列哪条语句定义了一个只读的属性Count?(B)intCount;intcount;publicintCountgetreturncoun

11、t;readonlyintCount;readonlyintCountgetreturncount;setcount=value;27. C#中的类型float对应.NET类库中的(A)判断下列类MyClass的定义中哪些是合法的抽象类?(A)抽象成员不能是私有的classMyClasspublicabstractintgetCount();classMyClassabstractintgetCount();abstractclassMyClassabstractintgetCount();abstractclassMyClassabstractintgetCount();29. 已知接口IH

12、ello和类Base?MyClass的定义如下interfaceIHellovoidHello();classBase:IHellopublicvoidHello()"HelloinBase!");classDerived:BasepublicvoidHello()"HelloinDerived!");则下列语句在控制台中的输出结果为_(A)_?IHellox=newDerived();();inBase!inDerived!inBase!HelloinDerived!inDerived!HelloinBase!.30. 为了将字符串str=“123,4

13、56”转换成整数123456,应该使用以下哪条语句?(A)Num=(str);Num=(int);Num=(int)str;Num=(str,已知结构Resource的定义如下:structResourcepublicintData=0;则下列语句的运行结果为?(D)印20行,每行输出都是data=0B.打印20行,每行输出都是data=nullC.打印20行.第1行输出data=0,第2行输出data=2,.,第20行输出data=19D.出现运行时异常32.关于C#程序的书写,下列不正确的说法是?(D)A. 区分大小写B. 一行可以写多条语句C. 一条语句可写成多行D.一个类中只能有一个M

14、ain()方法,因此多个类中可以有多个Main()方法33 .在C#语言中,下列能够作为变量名的是?(C)34 .在C#语言中,下面的运算符中,优先级最高的是_(A)_?A.%B.+C./=D.>>35 .能正确表示逻辑关系“a>=10或a<=0”的C#语言表达式是_(D)_?>=10ora<=0>=10|a<=0>=10&&a<=0>=10|a<=036 .以下程序的输出结果是_(C)_?Usingsystem;ClassExample1PublicStaticvoidmain()Inta=5,b=4,c

15、=6,d;(“0”,d=a>b?(a>c?a:c):b);D.不确定37 .if语句后面的表达式应该是_(A)_?A.逻辑表达式B.条件表达式C.算术表达式D.任意表达式38 .有如下程序Usingsystem;ClassExample1PublicStaticvoidmain()Intx=1,a=0,b=0;Switch(x)Case0:b+,break;Case1:a+,break;Case2:a+,b+,break;(“a=0,b=1”,a,b);的输出结果是(C)以下叙述正确的是_(C)_?.while语句构成的循环不能用其他语句构成的循环来代替.while语句构成的循环只

16、能用break语句退出C.用do-.while语句构成的循环,在while后的表达式为true时结束循环D.用do-.while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式40. 以下关于for循环的说法不正确的是_(A)_?循环只能用于循环次数已经确定的情况循环是先判定表达式,后执行循环体语句循环中,可以用break语句跳出循环体循环体语句中,可以包含多条语句,但要用花括号括起来?41. 假定int类型变量占用两个字节,若有定义:intx=newint100,2,4,4,5,6,7,8,9,10;则数组x在内存中所占字节数是_(B)?42. 以下程序的输出结果是:(C)C

17、lassExample1PublicStaticvoidmain()IntI;Inta=newint10;For(i=9;i>=0;i-)ai=10-I;(“0,12”,a2,a5,a8);43. 有定义语句:int,a=newint5,6;则下列正确的数组元素的引用是?(C)(3,4)(3)(4)343,444. 下列的数组定义语句,不正确的是?(D)a=newint51,2,3,4,5,a=newinta34a=newint3;a=1,2,3,4;45. 关于C#语言的方法,下列叙述中正确的是(A)_?A.方法的定义不能嵌套,但方法调用可以嵌套B.方法的定义可以嵌套,但方法调用不能嵌

18、套C.方法的定义和调用都不能嵌套D.方法的定义和调用都可以嵌套46. 以下所列的个方法头部中,正确的是_?_(C)play(vara:Integer,varb:integer)play(inta,b)play(inta,intb)play(aasinteger,basinteger)47. 下列程序的结果是:(B)Usingsystem;ClassExample1Staticlongfib(intn)If(n>2)return(fib(n-1)+fib(n-2);Elsererurn(2);PublicStaticvoidmain()(“0”,fib(3);team 后面的“=”去掉49

19、. 下列程序的执行结果是?Usingsystem;(C)代码有误,ClassExample1enumteam=my,your=4,his,her=his+10;PublicStaticvoidmain()(“0,1,2,3”,(int),(int),(int),(int);12340104515451550. 以下对枚举的定义,正确的是_(B)_?a=,threeaa1,a2,a3;a=1,2,3;a“one”,”two”,”three”;51. 枚举型常量的值不可以是_(D)_类型52. 调用重载方法时,系统根据_(B)来选择具体的方法?A.方法名B.参数的个数和类型C.参数名及参数个数D.

20、方法的返回值类型53. 下列的不是构造函数的特征?(D)A.构造函数的函数名和类名相同B.构造函数可以重载C.构造函数可以带有参数D.可以指定构造函数的返回值54. 类ClassA有一个名为M1的方法,在程序中有如下一段代码,假设该段代码是可以执行的,则修饰M1方法时一定使用了_(B)修饰符?ClassAobj=newClassA();();55. 已知类B是由类A继承而来,类A中有一个为M的非虚方法,现在希望在类B中也定义一个名为M的方法,若希望编译时不出现警告信息,则在类B中声明该方法时,应使用_(B)方法?56. 下列关于trycatchfinaly语句的说明中,不正确的是(D)?块可以

21、有多个块也是可选的D.可以只有try块57. 为了能够在程序中捕获所有的异常,在catch语句的括号中使用的类名为(A)D.以上三个均可58. 关于异常,下列的说法中不正确的是(D)?A. 用户可以根据需要抛出异常B. 在被调用方法可通过throw语句把异常传回给调用方法C. 用户可以自己定义异常D.在C#中有的异常不能被捕获59. 下列说法中正确的是_(D)?A. 在C#中,编译时对数组下标越界将作检查B. 在C#中,程序运行时,数组下标越界也不会产生异常C. 在C#中,程序运行时,数组下标越界是否产生异常由用户确定D.在C#中,程序运行时,数组下标越界一定会产生异常60. 要使窗体刚运行时

22、,显示在屏幕的中央,应设置窗体的_(B)属性?61. 要使文本框控件能够显示多行而且能够自动换行,应设置它的_(B)属性?和Multline和WordWrap和Multline和WordWrap63.要使复选框控件能够显示出三种状态,应首先设置它的(C)_属性?65. 在设计菜单时,若希望某个菜单项前面有一个号,应把该菜单项的属性设置为true?(A)_66. 下面对Read()和ReadLine()方法的描述,哪些是正确的?(A)(D)()方法一次只能从输入流中读取一个字符B.使用Read()方法读取的字符不包含回车和换行符()方法读取的字符不包含回车和换行符D.只有当用户按下回车键时,Re

23、ad()和ReadLine()方法才会返回67. 下面对Write()和WriteLine()方法的描述,哪些是正确的?(A)(B)(D)()方法在输出字符串的后面添加换行符B. 使用Write()输出字符串时,光标将会位于字符串的后面C. 使用Write()和WriteLine()方法输出数值变量时,必须要先把数值变量转换成字符串D.使用不带参数的WriteLine()方法时,将不会产生任何输出69. 以下标识符中,正确的是?(A)#70. 以下类型中,不属于值类型的是?(D)A. 整数类型B. 布尔类型C. 字符类型D.类类型71. 结构化的程序设计的3种基本结构是?(D)A.顺序结构,I

24、f结构,for结构结构,if.else结构elseif结构结构,do.while结构,foreach结构D.顺序结构,分支Z§构,循环结构72. 已知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;73. while语句循环结构和dowhile语句循环结构的区别在于?(D)语句的执行效率较高while语句编写程序较复杂C.无论条件是否成立,while语句都要执行一次循环体-while循环是先执行循环体,后判断条件表达式是否成立,而while语句是先判断条

25、件表达式,再决定是否执行循环体.74. 下面有关for语句的描述有错误的是?(A)A. 使用for语句时,可以省略其中的某个或多个表达式,但不能同时省略全部3个表达式B. 在省略for语句的某个表达式时,如果该表达式后面原来带有分号,则一定要保留它所带的分号C. 在for语句表达式中,可以直接定义循环变量,以简化代码语句的表达式可以全部省略75. 下面有关break,continue和goto语句描述正确的是?(D)语句和continue语句都是用于终止当前整个循环B.使用break语句可以一次跳出多重循环C.使用语句可以方便地跳出多重循环,因而编程时应尽可能多使用goto语句语句必须和标识符

26、配合使用,break和continue语句则不然76.下面是几条定义初始化一维数组的语句,指出其中正确的是?(D)arr1=6,5,1,2,3;arr1=newint;arr1=newint6,5,1,2,3;arr1;arr1=6,5,1,2,3;77下面是几条动态初始化一维数组的语句,指出其中正确的是?没有答案arr2=newint;arr2=newint4;arr2=newinti6,5,1,2,3;arr2=newint46,5,1,2,3;78. 下面是几条定义并初始化而维数组的语句,指出其中正确的是?(D)arr3=newint4,5;arr3=newint4,5;arr3,=ne

27、wint4,5,arr3=newint4,5;79. 下面有关枚举成员赋值说法正确的是?(D)A.在定义枚举类型时,至少要为其中的一个枚举成员赋一个常量值B.在定义枚举类型时,直接为某个枚举成员赋值,则其他枚举成员依次取值C.在把一个枚举成员的值赋给另一个枚举成员时,可以不考虑它们在代码中出现的顺序D.在定义的一个枚举类型中,任何两个枚举成员都不能具有相同的常量值80. 下列哪一项正确描述了Visual与.NETFramework之间的关系()?(D)与.NETFramework之间没有关系B.可以使用VisualIDE或者简单的文本编辑器创建应用程序,应用程序运行时需要使用.NETFrame

28、workC.开发应用程序时需要.NETFramework,但是在运行Visual创建的应用程序时不需要它?D.都不对?81. 下列各选项中,哪个选项不是.NETFramework的组成部分()?(A)A.应用程序开发程序B.公共语言规范和.NETFramework类库C.语言编辑器编辑器和应用程序执行管理85. 引用类型和值类型之间的区别是()?(A)A. 引用类型变量保存内存地址,值类型直接保存变量值B. 引用类型在变量中直接保存变量值,值类型保存内存地址C. 引用类型和值类型保存数据的方式相同D. .NETFramework不支持值类型,因为所有的类型都是引用类型了86. 下列关于命名空间

29、描述不正确的是()?(D)A.命名空间就是.NETFramework中相关类和命名空间的集合命名空间定义了包含工具箱中的控件及窗体自身的类C.命名控件中的所有类都是从同一个基类中继承的D.上述都对88.下面哪一项是类的有效方法()?(C)?ToBigger?ToData?TocurrentData?ToInt64?TodoubleD渚B不对90. 下列类型中为值类型的是.(C)A. 字符串类型B. 树组类型C. 枚举类型D.接口类型91. 下列给出的变量名正确的是.(B)useMainuse93. 下面有关运算符的说法正确的是(D)A.算术运算符不能对布尔类型,String*(字符串类型)和O

30、bject*(对象类型)进行算术运算B.关系运算中的”="和赋值运算符中的"="是相同的运算符用来查询某种数据类型或表达式的值在内存中所占懂得内存空间大小(字节数)D.括号在运算符中的优先级中是最高的,它可以改变表达式的运算顺序94. 执行下面的程序后,结果是正确是_(A)usingSystem;classTestStaticvoidMain()strings=”Test”;stringt=string.Copy(s);(s=t);(object)s=t);(s=(object)t);(object)s=(object)t);FalseFalseFalseFals

31、eTrueFalseFalseFalseTrueTrueFalseFalse96. 下列代码输出正确的是_(D)namespaceAnswerclassProgramstaticvoidMain(stringargs)intI,j;for(i=1;i>=0;i-)for(j=0;j<=I;j+)(“i*j=0”,i*j);* j=0i*j=0i*j=0* j=1i*j=0i*j=1* j=1i*j=1i*j=0* j=0i*j=1i*j=098.下面对i值的输出结果说法正确的是.(A)namespaceAnswerclassProgramstaticvoidMain(stringa

32、rgs)intidoi+;while(i<5)(“i值的为:0”,i)的值为:5的值为:6的值为:7的值为:8100. 下列参数类型中_是C#中不允许使用的(D)A.值参数B.引用参数C.输出参数D.指针参数101. 有两个具有相同名字的函数,当只满足下列选项的条件时,它们不能算作重载函数?(D)A.返回值的类不同B.参数数目不同C.参数类型不同D.参数的顺序不同102. 关于参数数组,下列说法错误的是_.(C)A.参数数组必须是函数的最后一个参数?B.参数数组必须是一维数组C.参数数组的声明同普通数组一样D.参数数组所对应的实参的个数是不固定的103. 在下列程序空格处填入正确的选项(A),能够实现调用函数show().classClass1staticvoidshow(refinti)i*=15;(“i=0”,i);staticvoidMain(stringargs)inttest=10;(“调用函数show前,test=0”,test);show();(“调用函数show后,test=0”,test);testtesttest104. 下面对字段说法正确的是?(A)(C)A.字段可以用static修饰符B.使用字段前必须对它进行初始化C.字段就是变量D.字段只能声明为只读

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论