admin 管理员组

文章数量: 887021


2023年12月17日发(作者:vmware官网)

(完整版)面向对象程序设计试卷及答案

考试试卷A(答案)

面向对象程序设计

注意事项:

1。 请考生按要求在试卷装订线内填写姓名、学号和年级专业。

2. 请仔细阅读各种题目的回答要求,在规定的位置填写答案。

3。 不要在试卷上乱写乱画,不要在装订线内填写无关的内容.

4。 满分100分,考试时间为120分钟。

题 号

得 分

总 分

统分人

得 分

评分人

一。单项选择

(本大题共10小题,每小题3分,共30分)

1. C#中每个int类型的变量占用( B )个字节的内存。

(A)8 (B)4 (C)2 (D)1

2。 面向对象的特点是( A )

(A)封装、继承、多态 (B)抽象、封装、多态

(C)抽象、继承、封装 (D)抽象、多态、重载

3。 C#控制台程序的主入口点是( C )

(A) Page_Load函数 (B)Run函数 (C)Main函数 (D)Form_Load函数

4。 引用类型存储在( B )中。

(A) 堆栈 (B)堆内存 (C)队列 (D)列表

5. 在C#中,表示一个字符串的变量应使用以下哪条语句定义( B )

(A)CString str (B)string str

(C)Dim str as string (D)char *str

6。在中,用来与数据源建立连接的对象是( A )。

(A)Connection对象 (B)Command对象(C)DataAdapter对象 (D)DataSet对象

7. 在类的定义中,类的( B )描述了该类的对象的行为特征.

(A)类名 (B)方法 (C)所属的名字空间 (D)私有域

8. 如果未显式赋值,则将整型值( B )赋给枚举中的第一个元素。

(A)1 (B)0 (C)2 (D)3

9. float类型的值可以隐式转换成( C )类型的值而保持值不被改变。

(A)char (B)long (C)double (D)int

10。

在C#中,假设Class1是一个类,而IExample是一个接口,下面的( A )类声明是正确的。

(A)class Employee: Class1, IExample

(完整版)面向对象程序设计试卷及答案

(B)class Employee: IExample, Class1

(C)class Employee- Class1, IExample

(D)class Employee: Class1/IExample

二.判断题

(本大题共5小题,每小题3分,共15分)

评分

1. C#中子类可以继承多个基类,也可以继承一个接口。 ( × )

2. 标识符可以与关键字相同。 ( × )

3. 静态成员不能由对象进行访问。 ( √ )

4. 对象有三个特征,标识、状态和行为。 ( √ )

5。 索引器可以用static修饰. ( × )

三. 简答题

(本大题共4小题,每小题5分,共20分)

评分

1. 请叙述public、private、protected、internal修饰符的作用域?

答:1)限定为public的成员,可以被所有的类访问;

2)限定为protected的成员,可以被这个类本身、它的子类(包括同一个包中以及不同包中的子类)和同一个包中的所有其他的类访问;

3)限定为private的成员,只能被这个类本身访问,如果一个类的构造方法声明为private,则其它类不能生成该类的一个实例;

4)internal: 只能值包含该类的程序集中访问该类;

2。 解释重写和隐藏的区别和联系?

答:重写又称为覆盖,对于基类的virtual成员,在派生类中重新加以定义并用关键字override修饰的称为重写或者覆盖.隐藏是对于基类的成员,在派生类中重新加以定义,并用NEW关键词修饰的称为隐藏;

重写和隐藏有相似的方面,但又有实质的区别:隐藏和重写是基类和派生类的同名成员的两种不同关系,隐藏可以发生在数据成员和行为成员上,而重写只是对行为成员而言;

3.请说明索引和属性的异同?

答:1)属性和索引器的作用都是为了进一步封装数据、组织数据并提供方便的访问方式;

2)定义属性和定义索引相似,他们都具有get访问器和set访问器,并且可以取舍以控制访问权限;

3)所有的字段都可以有属性,字段是默认的和最简单的属性,但索引器不同;

4)属性可以是实例成员,也可以是属于整个类的静态成员,但索引只能是实例成员,属于某一个具体的对象。

4。程序的基本结构有哪几种?

答:程序的基本结构有以下几种:

1) 顺序结构

2)选择结构

3)循环结构

(完整版)面向对象程序设计试卷及答案

四. 程序阅读

(本大题共2小题,每空3分,共15分)

评分

1。阅读下面的程序,填写程序中缺少的部分,并把程序的输出结果写出来;

class Test {

static void ShowArrayInfo( int[] student ){

for(int i=0;i

(student[i]++);

(“ ");

}

static void Main(){

int[] student =new int[]{1,2,3,4,5};

ShowArrayInfo(student);

Console。Write(“n");

ShowArrayInfo(student);

}

输出结果: 1 2 3 4 5

1 2 3 4 5

2。 以下方法是连接数据库的一个方法,请将该方法补充完整

public DataTable GETtABLE()

{

string strConn = "data source=.;initial catalog=database;user id=sa;password=sa;";

SqlConnection con = new SqlConnection(strConn);

con。Open();

DataSet ds = new DataSet();

SqlCommand com = new SqlCommand(”select * from mytable", con);

SqlDataAdapter adp = new SqlDataAdapter(com);

adp。Fill(ds);

return ds。Tables[0];

}

得 分

评分人

五。编程:创建一个学生类,类里面的字段包括姓名、学号、性别等,构建5个学生对象,可以对学生信息进行查询。。

(本大题共1小题,每小题20分,共20分)

using System;

using System。c;

using System。Linq;

using ;

(完整版)面向对象程序设计试卷及答案

using System。Collections;

namespace ConsoleApplication3

public class Student

public string id;

public string name;

public string sex;

public void print()

Console。WriteLine("学号:{0},姓名:{1},性别:{2}", id, name, sex);

}

class Program

{

static void Main(string[] args)

ArrayList list = new ArrayList();

Program pro = new Program();

Console。WriteLine(”请输入学生信息(学号 姓名 性别),用空格隔开,然后回车,停止录入输入exit");

dent(list);

ine(”请输入学生学号,然后回车");

udent(list);

public void AddStudent(ArrayList list)

while (true)

string str = ne();

if (str == "exit”) return;

string[] values = str。Split(’ ’);

Student student = null; ;

try

student = new Student();

= values[0];

= values[1];

student。sex = values[2];

catch { }

list。Add(student);

}

public void FindStudent(ArrayList list)

while (true)

(完整版)面向对象程序设计试卷及答案

{

string id = Console。ReadLine();

if (id == ”exit”) return;

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

Student temp = (Student)list[i];

if ( == id)

();

}

} }

}


本文标签: 成员 程序 试卷 隐藏 对象