c#复习题

2020-03-29 14:09

一、选择题

1.CLR是一种(B )

A.程序设计语言 B. 运行环境 C.开发环境 D. API编程接口

2.变量openFileDialog引用一个OpenFileDialog对象,为检查用户是否单击了“打开”按钮而退出该对话框,应检查框,应检查( D)是否等于DialogResult.OK。 A.OpenFileDialog.Site属性的值 B.OpenFileDialog.Result属性的值 C.OpenFileDialog.OpenFile()的返回值 D.OpenFileDialog1.ShowDialog()的返回值

3.为了在程序中使用DataSet 类定义数据集对象,应在文件开始处添加对命名空间(C )的引用。

A. System.IO B. System.Utils C. System.Data D. System.DataBase 4.C#中的值类型包括三种,它们是(C ) A.整型、浮点型、基本类型

B.数值类型、字符类型、字符串类型 C.简单类型、枚举类型、结构类型 D.数值类型、字符类型、枚举类型

5.C#数组主要有三种形式,它们是(C ) A.一维数组、二维数组、三维数组 B.整型数组、浮点型数组、字符型数组 C.一维数组、多维数组、不规则数组 D.一维数组、二维数组、多维数组

6.对于标签控件Label的错误说法是( A )

A.要修改Label上的字内容,可修改该控件Caption属性 B.要修改Label上的字内容,可修改该控件Text属性 C.要修改Label的背景色,可修改该控件BackColor属性 D.要修改Label的文本颜色,可修改该控件ForeColor属性

7.在ADO.NET 中,为访问DataTable 对象从数据源提取的数据行。可使用DataTable 对象的( A )属性。

A. Rows B. Columns C. Constraints D. DataSet

8.C#的引用类型包括类、接口、数组、委托、object和string。其中object( D)根类。 A.只是引用类型的 B.只是值类型的

C.只是string类型的 D.是所有值类型和引用类型的 9.C#实现了完全意义上的面向对象,所以它没有( D ),任何数据域和方法都必须封装在类体中。

A.全局变量 B.全局常数

C.全局方法 D.全局变量、全局常数和全局方法

10.在C#中,将路径名\存入字符串变量path中的正确语句是(A ) A.path = \ B.path = \C.path = \ D.path = \

11.以下关于继承的说法错误的是( D )。

A. .NET框架类库中,object类是所有类的基类 B. 派生类不能直接访问基类的私有成员

C. protected修饰符既有公有成员的特点,又有私有成员的特点 D. 基类对象不能引用派生类对象 12.C#中程序的入口方法名是( A )

A.Main B.main C.begin D.using 13.在C#.Net中,用来创建主菜单的对象是( C )。

A. Menu B. MenuItem C. MenuStrip D. Item

14.要创建多文档应用程序,需要将窗体的( D )属性设为true。

A.DrawGrid; B.ShowInTaskbar; C.Enabled; D.IsMdiContainer; 15.下列关于抽象类的说法错误的是(A)。 A. 抽象类可以实例化 B. 抽象类可以包含抽象方法 C. 抽象类可以包含抽象属性 D. 抽象类可以引用派生类的实例

16.在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.Show(“Hello”,”This is a test!”); 17.加载窗体时触发的事件是( B )。

A. Click B. Load C. GotFoucs D. DoubleClick 18.在C#中定义接口时,使用的关键字是( A )。 A.interface B.: C.class D.overrides

19.类的以下特性中,可以用于方便地重用已有的代码和数据的是( C ). A.多态 B.封装 C.继承 D.抽象 20.数据类型转换的类是( B )。

A. Mod B. Convert C. Const D. Single 二、填空题

1.C#语言的核心是面向对象编程(OOP),所有OOP语言都应至少具有三个特性: 封装 、 和 继承 、多态。

2.C#中导入某一命名空间的关键字是using

3.析构函数不能由程序显式地调用,而是由系统在 释放对象 时自动调用。如果这个对象是一个派生类对象,那么在调用析构函数时,除了执行派生类的析构函数,也会执行基类的析构函数,其执行顺序与构造函数 相反 。

4.在类中,如果一个数据成员被声明为static的,则说明这个类的所有实例都共享这个static数据成员。在类体外,static成员不能通过 实例 来访问,它必须通过 对象 来访问。5.DataReader对象是通过Command对象的 ExcuteReader()方法 方法生成的。

6.从数据源向DataSet中填充数据用DataAdapter对象的 Fill()方法 方法,从DataSet向数据源更新数据用DataAdapter对象的 Update()方法 方法。

7.C#中可以把任何类型的值赋给object类型变量,当值类型赋给object类型变量时,系统要进行装箱操作;而将object类型变量赋给一个值类型变量,系统要进行拆箱 操作,并且必须加上强制 类型转换。

8.C#特有的不规则数组是数组的数组,也就是说它的数组元素是 不定的 ,并且它的内部每个数组的长度 可以不同的 。

9.设int x=52,则表达式x*=x-=x值为 0 。 10.创建数据库连接使用的对象是 Connection 。 三、判断题

1.构析函数调用的执行顺序与构造函数相同。(×) 2.在C#中,任何方法都不能实现多继承。(× )

3.DataSet对象中的表可以和数据库中的表同名,也可以不同名。(×) 4.使用Directory类的Move()方法可以删除文件。(×)

5.在C#中,子类不能继承父类中用private修饰的成员变量和成员方法。( √)

6.数组在创建时可根据需要进行初始化,不论数组的维数是多少,都必须显式地初始化数组的所有元素。( √)

7.Command对象可以执行SQL语句。(√ ) 8.在C#类中,this代表了当前对象本身。( √)

9.C#的静态构造函数可以对静态成员或非静态成员进行初始化。(× ) 10.进程包括运行中的程序和程序使用的内存和系统资源。(√ ) 四、程序阅读题

1.代码如下: 答案:154 312 using System; class Test {

static int[] a = { 56, 41, 28, 271,70}; public static void Main() {

int s0, s1; s0 = s1 = 0;

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

switch (a[i] % 2) {

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

Console.WriteLine(s0 + \ } }

2.代码如下: 答案:C.Note A.Note B.Note using System; public interface A { Object Note(); }

public interface B { Object Note (); }

public class C : A, B { Object A. Note () { return “A.Note \ } Object B. Note () {

return “B.Note \ }

public Object Note () {

return “C.Note \ }

static void Main() {

C g = new C(); Object m; m = g. Note (); Console.Write(m); m = ((A)g). Note(); Console.Write(m); m = ((B)g). Note(); Console.Write(m); } }

3.代码如下: 答案:13 8

using System; class Test {

static void LE(ref int x, ref int y) { int t = x; x = y; y = t;

Console.WriteLine (x + \}

public static void Main () {

int x=8, y=13; LE(ref x, ref y);

13 8 Console.WriteLine (x + \} }

4.代码如下:答案:17 22 65 94 104 using System; public class Exe {

public static void Main() {

int[] a ={ 104, 17, 65, 94, 22 }; int i, j, m;

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

m = a[i]; j = i - 1;

while (j >= 0 && m < a[j]) {

a[j + 1] = a[j];j--; } a[j + 1] = m; }

for (i = 0; i < 5; i++)

Console.Write(\ } }

1.什么是装箱和拆箱?

装箱就是将值类型包装成引用类型的处理过程。拆箱是将一个object类型转换成值类型。 2.try {}里有一个return语句,那么紧跟在这个try后的finally {}里的code会不会被执行,什么时候被执行,在return前还是后? code会被执行,在return前执行.

3.创建文件有哪几种方法?各自有什么特点?

可以使用File、FileInfo、FileStream类创建文件。

①File类提供操作文件的相关静态方法,包括创建、移动、复制、删除及打开指定的文件,它允许用户直接使用File类调用相关的方法对文件操作。

②FileInfo类提供实例方法成员,用以操作文件,其功能与File相同,差异在于必须产生实例对象来调用指定的方法成员。

③FileStream类用来读/写文件系统上的数据。 4.值类型和引用类型的区别是什么? 值类型是一个包含实际数据的量。引用类型不存储它们所代表的实际数据,而是存储实际数据的引用。

5.TextBox控件的主要作用是什么?多行TextBox控件是如何设置出来的? 主要用来显示文本或用来输入文本。在属性窗口将Multiline属性设置为true,此时文本框已经可以接受多行输入了; 6.笔和画笔的功能有什么区别?

笔可用于绘制线条,曲线以及勾勒形状轮廓。画笔是以Graphics对象一起使用来创建实

心形状和呈现文本的对象。 P167

7.什么是抽象类和密封类,它们有什么不同?

抽象类是种特殊的基类,使用关键字abstract定义,它不能被实例化,只能作为其他类的基类,由其他类继承。密封类由关键字sealed定义,不能被其他类继承。 P94

8.CheckBox控件的主要作用是什么?为什么一般RadioButton控件要和GroupBox控件或Panel控件组合使用?

单选按钮RadioButton控件指在为用户提供两种或多种设置以便选择其一。GroupBox控件与Panel控件都是容器,将RadioButton控件放在容器中是为了给RadioButton控件进行分组,使之独立于其他工作。 P152

程序阅读题: 1、154 312

2、 C.Note A.Note B.Note 3、 13 8

13 8

4、17 22 65 94 104


c#复习题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:皮革加脂剂的研发论文 doc1

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: