您好,欢迎来到爱go旅游网。
搜索
您的当前位置:首页C#考试题目及答案2

C#考试题目及答案2

来源:爱go旅游网


一.单项选择题

1. C#程序设计语言属于什么类型的编程语言:( c )

A.机器语言 B.汇编语言 C.高级语言 D.自然语言

2. 如有int a=11;则表达式(a++*1/3)的值是: ( b ) A.0 B.3 C.4 D.12

3. 类的字段和方法的默认访问修饰符是:( b )

A. public B. private C. protected D. internal

4. 对于在代码中经常要用到的且不会改变的值,可以将其声明为常量。如圆周率PI始终为3.14。现在要声明一

个名为PI的圆周率常量,下面哪段代码是正确的?( b ) A.const float PI; PI = 3.14f; B.const float PI = 3.14f; C.float const PI; PI = 3.14f; D.float const PI = 3.14f;

5. 请问经过表达式a=3+3>5?0:1的运算,变量a的最终值是什么?( c ) A.6 B.1 C.0 D.true

6 在C#中,关于continue和break,以下说法正确的是( b ) A break是中断本次循环

B continue是中断本次循环,进入一下次的循环

C break是中断本次循环,进入一下次的循环//break是中断整个循环 D continue是中断整个循环

7 在C#中,关于while和do…while,以下说法正确的是( c ) A while先执行然后判断条件是否成立 B while最少的循环次数是1次

C do…while先执行然后判断条件是否成立 D do…while最少的循环次数是0次

9下列关于构造函数的描述中,哪个选项是正确的?( a )

A. 构造函数必须与类名相同 B. 构造函数不可以用private修饰 C. 构造函数不能带参数 D. 构造函数可以声明返回类型

10以下类MyClass 的属性count 属于( a )属性。

class MyClass { int i; int count {

get{ return i; } } }

A. 只读 B. 只写 C. 可读写 D. 不可读不可写

11 C#中TestClass为一自定义类,其中有以下属性定义public int Property{…},使用以下语句创建了该类的对象,并使变量obj引用该对象:

TestClass obj=new TestClass();

那么,可通过什么方式访问类TestClass的Property属性? ( c ) A. TestClass.Progerty; B. TestClass.Property(); C. obj.Property; D. obj.Property();

13下列关于接口的说法中,哪个选项是正确的?( d )

A. 一个类可以有多个基类和多个基接口 B. 抽象类和接口都不能被实例化

C. 抽象类和接口都可以对成员方法进行实现

D. 派生类可以不实现抽象基类的抽象方法,但必须实现继承的接口的方法

16、在C#中定义一个数组,正确的代码为( b )。

A.int arraya = new int[5]; B.int[] arraya = new int[5]; C.int arraya = new int[]; D.int[5] arraya = new int;

17、在C#中,下列代码的运行结果是( d )。 int []num = new int[5]{1,3,2,0,0} Array.Reverse(num); foreach(int i in num){

Console.Write(i); }

A. 00123 B. 12300 C. 00132 D. 00231

18 二维坐标系中,通常需要保存一组点的坐标。使用二维数组是一个解决方案。下面哪段代码正确初始化了2行2列的整数二维数组?( a )

A. int[,] array = new int[2,2]; B. int[][] array = new int[2][2]; C. int[,] array = new int[2][2]; D. int[][] array = new int[2,2];

19、 int[][] myArray3=new int[3][]{new int[3]{5,6,2},new int[5]{6,9,7,8,3},new int[2]{3,2}}。其中myArray3[2][2]的值是( d )

A. 9 B. 2 C. 6 D. 越界

21、在.NET中,TextBox控件的( a )属性用来设置其是否是只读的。 A. ReadOnly B. Locked C. Lock D.Style

22、WinForms程序中,如果复选框控件的 Checked属性值设置为 True,表示( a )。 A. 该复选框被选中 B. 该复选框不被选中

C. 不显示该复选框的文本信息 D. 显示该复选框的文本信息

23 要让用户选择和浏览要打开的文件,应使用什么对话框?( b ) A. FileDialog B. OpenFileDialog

24 在C#中,下列数据类型属于引用类型的是( c )。 A.整型(int) B.结构(struct) C.接口(interface) D.枚举(enum)

25.让控件不可用的属性是以下哪一个? ( b ) A. AllowDrop B. Enabled C. Bounds D. Visible

26.让控件不可见的属性是以下哪一个? ( d ) A. Cursor B. Enabled C. Dock D. Visible

27. 在visual studio.Net窗口中,( d )显示了当前visual studio .net解决方案的树形结构。 A. 资源视图 B. 类视图 C. 属性 D. 解决方案资源管理器

28. 在C#程序中,显示一个信息为”This is a test!,标题为”Hello”的消息框,正确的语句是( b ) A. MessageBox(”This is a test!” , ”Hello”); B. MessageBox.Show(”This is a test! ”, ”Hello”);

C. MessageBox(”Hello”, ”This is a test! ”); D. MessageBox.Sow(”Hello”, ”This is a test! ”);

29. C#中执行后整型量x和y的值是什么?( b ) int x = 100; int y = x++; A.x = 100 y = 101 B.x = 101 y = 100 C.x = 101 y = 101 D.x = 100 y = 100

30. 下列语句在控制台上的输出是什么?( a ) String msg = @”Hello\\nWord!”; System.Console.WriteLine(msg);

A. Hello\\nWord! B. @”Hello\\nWord!” C. Hello Word! D. Hello Word!

二.概念解释

1. 类和对象

类:一种数据类型,定义了存储哪些数据(成员变量)以及如何处理这些数据的行为(成员函数); 对象:也叫实例,是类的具体个案;

同一个类的对象都具有相同的存储结构和行为功能,但具体每个对象存储的数据可以不同。 概括为:类是一种分类,对象则是具体事物,对象一定是属于某个类。 2. 装箱和拆箱

将值类型包装为引用类型的过程,称为装箱。

将引用类型转换为值类型的过程称为拆箱。拆箱将对对象强制转换为原来的类型。

3. 封装

封装是实现面向对象程序设计的第一步,封装就是将数据或函数等集合在一个个的单元中(我们称之为类)。被封装的对象通常被称为抽象数据类型。 4. 继承

继承主要实现重用代码,节省开发时间。继承是可传递的。 5. 多态

同一操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。多态性通过派生类覆写基类中的虚函数型方法来实现。多态性分为两种,一种是编译时的多态性,一种是运行时的多态性。

3. 若打印如下图案: * * * * * * * * * * * * * * *

for (int i = 1; i <= 5; i++) {

for (int j = 6-i (4) ; j <= 5 ; j++) {

Console.Write(\"*\"); }

Console.Write(); (5)

}

四.读程序写结果

1.

using System; class Test {

public void F(string s) {

for (int i=0; iConsole.Write(s[i]); return; }

public static void Main( ) {

string str=“电信学院计算机科学系” ; Test t=new Test( ); t.F(str); } }

电学计机学 2.

using System; class Demo {

int a;

public Demo(int n) {

a=n; }

public int M( ) {

if (a>0)

return a--;

else

return 0; }

}

class Test {

static void Main( ) {

Demo x=new Demo(9); int k=x.M( ); while (k>0) {

Console.Write(“{0}\ ”, k*k); k=x.M( ); } } }

81 49 36 25 16 9 4 1

3.

using System; class Test {

static int[] a = { 1, 2, 3, 4, 5, 6, 7, 8 }; public static void Main() {

int s0, s1, s2;

s0=s1=s2= 0;

for (int i = 0; i < 8; i++) {

switch (a[i] % 3)

{

case 0: s0 += Test.a[i]; break;

case 1: s1 += Test.a[i]; break; case 2: s2 += Test.a[i]; break; }

}

Console.WriteLine(s0 + \" \" + s1 + \" \" + s2);

} }

9+12+15 4.

using System; class Test {

public static void Main ()

{

int s=0, i=1;

for ( ; ; i++) {

if (s>50)

break;

if (i%2==0)

s+=i;

}

Console.writeLine (\"i, s=\" + i + \} }

14,S=2+4+6...+14,56

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- igat.cn 版权所有 赣ICP备2024042791号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务