一选择题
(1)下面是关于标识符的描述,不正确的有哪些?(D)
A字母和下划线(a-Z、A-Z和)_)可以用在任何位置;
B数字不能放在首位,但可以在其他的任何地方;
C@字符可以放在标识符的首位,但不能放在其他任何地方。虽然允许使用@字符,但不推荐作为常用字符;
D标识符不区分大小写。
(2)下面是关于关键字和上下文关键字的描述,不正确的有哪些?(B)
A关键字不能被用作变量名或任何其他形式的标识符,除非以@字符开始;
B所有C#关键字全部都由大写字母组成,但是.NET类型名使用Pascal大小写约定;
C上下文关键字是仅在特定的语言结构中充当关键字的标识符,在那些位置,它们有特别的含意;
D但和关键字不同,关键字不能被用作标识符,而上下文关键字可以在其他部分代码中被用作标识符。
(3)下面是关于Main方法的描述,不正确的有哪些?(D)
A每个C#程序必须有一个类或者结构带有Main方法;
B每个C#程序的可执行起始点在Main中的第一条指令;
C Main必须首字母大写;
D Main的最简单形式如下:
void Main()
{
}
(4)下面是关于空白的描述,不正确的有哪些?(D)
A程序中的空白指的是没有可视化输出的字符;
B源代码中的空白将被编译器忽略;
C程序员用空白使代码更清晰易读;
D空白字符包括:空格(Space)、制表符(Tab)、换行符、回车符、¥。
(5)下面是关于语句块的描述,不正确的有哪些?(A)
A块是一个由成对大括号包围的一条或多条语句序列,它在语法上相当于一条语句;
B可以在任何语法上只需要一条语句而你需要的行为又要求一条以上的简单语句的情况下使用块;
C有些特定的程序结构只能使用块。在这些结构中,不能用简单语句替代块;
D简单语句以分号结束,但块后面不跟分号。(虽然编译器允许这样,但这不是好的风格。)
(6)下面是关于多个变量声明的描述,不正确的有哪些?(C)
A可以把多个变量声明在一条单独的声明语句中;
B多重变量声明中的变量必须类型相同;
C变量名必须用分号分隔;
D可以在变量名后包含初始化语句;
E初始化的变量可以和未初始化的变量混在一起。
(7)下面是关于类的描述,不正确的有哪些?(D)
A类是一个能存储数据并执行代码的数据结构;
B类的数据成员存储与类或类的实例相关的数据,它们通常模拟该类所表示的现实世界事物的特性;
C类的函数成员执行代码,它们通常模拟类所表示的现实世界事物的功能和操作;
D一个类可以有任意数目的数据成员和函数成员,即至少要有一个数据成员或者函数成员。
(8)下面是关于类声明的描述,不正确的有哪些?(B)
A类的声明定义新类的特征和成员;
B类的声明创建类的实例;
C类的声明提供下列内容:类的名称、类的成员和类的特征;
D大括号内包含了成员的声明,它们组成了类主体;
E类成员可以在类主体内部以任何顺序声明,这意味着成员的声明完全可以引用在后面声明中才定义另一个的成员。
(9)下面是关于类中字段的描述,不正确的有哪些?(A)
A字段是类的函数成员;
B字段可以是任何类型,无论是预定义类型还是用户定义类型;
C和所有变量一样,字段用来保存数据;
D字段可以被写入和被读取。
(10)下面是关于类中方法的描述,不正确的有哪些?(D)
A方法是具有名称的可执行代码块;
B方法可以从程序的很多不同地方执行,甚至从其他程序中执行;
C当方法被调用时,它执行自己所含的代码,然后返回到调用它的代码位置;
D有些方法返回一个以上的值到它们被调用的位置。
(11)下面是关于类中方法声明组成成分的描述,不正确的有哪些?(C)
A返回类型:它声明了方法返回值的类型。如果一个方法不返回值,那么返回类型被指定为void;
B名称:这是方法的名称;
C参数列表:它由至少一对空的方括号组成。如果有参数,它们被列在方括号中间;
D方法体:它由一对大括号组成,大括号内包含执行代码。
(12)下面是关于类中私有成员的描述,不正确的有哪些?(A)
A私有成员不仅能从声明它的类的内部访问,还能在其他类的内部访问它们;
B私有访问是默认的访问级别,所以,如果一个成员在声明时不带访问修饰符,那它就是私有成员;
C还可以使用private访问修饰符显式地声明一个成员为私有;
D隐式地声明私有成员和显式地声明没有语义上的不同,两种形式是等价的。
(13)下面是关于var关键字的描述,不正确的有哪些?(B)
A var关键字并不是某种特别类型的符号,它只是句法上的速记,表示任何可以从初始
化的右边推断出的类型;
B能用于本地变量,也能用于字段;
C只能在变量声明中包含初始化时使用;
D一旦编译器推断出变量的类型,它就是固定且不能更改的。
(14)下面是关于本地常量的描述,不正确的有哪些?(A)
A常量在声明中可以初始化,也可以不初始化;
B常量在声明后不能改变;
C关键字const不是一个修饰符,而是核心声明的一部分,它必须直接放在类型的前面;
D必须有初始化语句,初始化值必须在编译期决定。
(15)下面是关于方法返回值的描述,不正确的有哪些?(A)
A方法可以向调用代码返回一个以上的值,返回的值被插入到调用代码中发起调用的表达式所在的位置;
B要返回值,方法必须在方法名前面声明一个返回类型;
C如果方法不返回值,它必须声明void返回类型;
D声明了返回类型的方法必须使用返回语句从方法中返回一个值,该返回语句包括关键字return及其后面的表达式。每一条穿过方法的路径都必须以一条这种形式的return语句结束。
(16)下面是关于方法形参的描述,不正确的有哪些?(C)
A因为形参是变量,所以它们有类型和名称,并能被写入和读出;
B和方法中的其他变量不同,形数在方法体的外面定义并在方法开始之前初始化,但输出形例外,它在方法体的内定义;
C参数列表中可以有任意数目的形参声明,而且声明必须用分号隔开;
D形参在整个方法体内可用,在大部分地方就像其他本地变量一样。
(17)下面是关于方法实参的描述,不正确的有哪些?(E)
A用于初始化形参的表达式或变量称为实参;
B实参放在方法调用的参数列表中;
C当方法被调用的时候,每个实参的值都被用于初始化相应的形参,方法体随后被执行;
D实参的数目必须和形参的数目相同(参数数组是个例外);
E每个实参必须和相应形参的类型必须完全相同。
(18)下面是关于值参数的描述,不正确的有哪些?(B)
A参数的默认类型是值参数;
B在堆中为形参分配空间;
C复制实参到形参;
D一个值参数的实参不一定是变量。它可以是任何能计算成相应数据类型的表达式;
E值参数是把实参的值复制到形参的参数。
(19)下面是关于引用参数的描述,不正确的有哪些?(B)
A使用引用参数时,必须在方法的声明和调用中都使用ref修饰符;
B实参必须是变量,在用作实参前可以不被赋值;
C如果是引用类型变量,实参可以赋值为一个引用或者null值;
D不在栈中为形参分配新的内存;
E形参的名称相当于实参变量的别名,引用与实参相同的内存位置;
F在方法执行期间对形参所做的任何改变在方法完成之后通过实参变量都是可见的。
(20)下面是关于输出参数的描述,不正确的有哪些?(C)
A输出参数用于从方法体内把数据传出到调用代码;
B必须在方法的声明和调用中都使用out修饰符;
C实参可以是变量,也可以是其他的表达式类型;
D就像引用参数,输出参数的形参担当实参的别名,形参和实参都是同一内存位置的名称;
E在方法内部,输出参数在被读取之前必须被赋值。这意味着输出参数无初始值,而且没有必要在方法调用之前为实参赋值;
F每个输出参数在方法返回之前必须被赋值。
(21)下面是关于参数数组的描述,不正确的有哪些?(C)
A在一个参数列表中只能有一个参数数组;
B如果有,参数数组必须是列表中的最后一个;
C在数据类型前使用params修饰符,在声明中需要该修饰符,在调用中也需要有该修饰符;
D在数据类型后放置一组空的方括号。
(22)下面是关于栈帧的描述,不正确的有哪些?(B)
A当一个方法被调用时,在栈顶分配了一块内存用于保存一定数量与方法相关的数据项,这块内存叫方法的栈帧(stack flame);
B方法被调用时,它的整个栈帧被压入堆中;
C方法退出时,它的整个栈帧被从栈中弹出。弹出一个栈帧有时也称为释放栈;
D栈帧存放了返回地址、参数、与方法调用相关的其他各种管理数据项。
(23)下面是关于递归的描述,不正确的有哪些?(C)
A除了调用其他方法,方法还能调用自己,这称为递归(recursion);
B方法调用自己的机制和调用其他方法完全相同。方法的每次调用都会有一个新的帧被压入栈中;
C当递归越来越深时,堆也越来越大;
D设计递归方法时要避免无限递归。
(24)下面是关于方法签名的描述,不正确的有哪些?(A)
A返回类型是签名的一部分;
B形参的名称也不是签名的一部分;
C方法的名称是签名的一部分;
D参数的数目是签名的一部分;
E参数的数据类型和顺序是签名的一部分;
F参数修饰符是签名的一部分。
(25)下面是关于静态字段的描述,不正确的有哪些?(C)
A静态字段被类的所有实例共享,所有实例都访问同一内存位置;
B如果静态字段的值被一个实例改变了,这种改变对所有的实例都可见;
C没有使用static修饰符声明的字段为静态字段;
D除了实例字段,类还可以拥有静态字段。
(26)下面是关于静态函数的描述,不正确的有哪些?(D)
A除了静态字段,还有静态函数成员;
B如同静态字段,静态函数成员独立于任何类实例;
C即使没有类的实例,仍然可以调用静态函数成员;
D静态函数成员能访问实例成员,也能访问其他静态成员。
(27)下面是关于属性的描述,不正确的有哪些?(D)
A它是命名的类成员;
B它有类型;
C它可以被赋值和读取;
D它为数据存储分配内存;
E它执行代码;
F set访问器用于为属性赋值;
字符串常量池存放的是引用还是对象
G get访问器用于从属性获取值。
(28)下面是关于自动实现属性的描述,不正确的有哪些?(B)
A允许只声明属性而不声明后备字段;
B必须提供访问器的方法体;
C get担当简单的内存读,set担当简单的写;
D除非通过访问器,否则不能访问后备字段;
E只读和只写自动实现属性也就没有意义,因此它们不被允许。
(29)下面是关于实例构造函数的描述,不正确的有哪些?(D)
A实例构造函数是一个特殊的方法,它在类的每个新实例创建的时候执行;实例构造函数用于初始化类实例的状态;
B如果希望能从类的外部创建类的实例,需要声明实例构造函数为public;
C构造函数的名称和类名相同;
D构造函数能有返回值。
(30)下面是关于类中默认构造函数的描述,不正确的有哪些?(B)
A如果在类的声明中没有显式地提供实例构造函数,那么编译器会提供一个隐式的默认构造函数;
B默认构造函数带一个参数;

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。