一.单项选择题
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; i 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
本站由北京市万商天勤律师事务所王兴未律师提供法律服务