您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > 面向对象程序设计试卷及答案
考试试卷A(答案)面向对象程序设计注意事项:1.请考生按要求在试卷装订线内填写姓名、学号和年级专业。2.请仔细阅读各种题目的回答要求,在规定的位置填写答案。3.不要在试卷上乱写乱画,不要在装订线内填写无关的内容。4.满分100分,考试时间为120分钟。题号一二三四五总分统分人得分一.单项选择(本大题共10小题,每小题3分,共30分)1.C#中每个int类型的变量占用(B)个字节的内存。(A)8(B)4(C)2(D)12.面向对象的特点是(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)CStringstr(B)stringstr(C)Dimstrasstring(D)char*str6.在ADO.NET中,用来与数据源建立连接的对象是(A)。(A)Connection对象(B)Command对象(C)DataAdapter对象(D)DataSet对象7.在类的定义中,类的(B)描述了该类的对象的行为特征。(A)类名(B)方法(C)所属的名字空间(D)私有域8.如果未显式赋值,则将整型值(B)赋给枚举中的第一个元素。(A)1(B)0(C)2(D)39.float类型的值可以隐式转换成(C)类型的值而保持值不被改变。(A)char(B)long(C)double(D)int得分评分人10.在C#中,假设Class1是一个类,而IExample是一个接口,下面的(A)类声明是正确的。(A)classEmployee:Class1,IExample(B)classEmployee:IExample,Class1(C)classEmployee-Class1,IExample(D)classEmployee: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.阅读下面的程序,填写程序中缺少的部分,并把程序的输出结果写出来;classTest{staticvoidShowArrayInfo(int[]student){for(inti=0;istudent.Length;i++){Console.Write(student[i]++);Console.Write(“”);}}staticvoidMain(){int[]student=newint[]{1,2,3,4,5};ShowArrayInfo(student);Console.Write(“\n”);ShowArrayInfo(student);}}输出结果:12345123452.以下方法是连接数据库的一个方法,请将该方法补充完整publicDataTableGETtABLE(){stringstrConn=datasource=.;initialcatalog=database;userid=sa;password=sa;;SqlConnectioncon=newSqlConnection(strConn);con.Open();DataSetds=newDataSet();SqlCommandcom=newSqlCommand(select*frommytable,con);SqlDataAdapteradp=newSqlDataAdapter(com);adp.Fill(ds);returnds.Tables[0];}得分评分人五.编程:创建一个学生类,类里面的字段包括姓名、学号、性别等,构建5个学生对象,可以对学生信息进行查询。。(本大题共1小题,每小题20分,共20分)usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Collections;namespaceConsoleApplication3{publicclassStudent{publicstringid;publicstringname;publicstringsex;publicvoidprint(){Console.WriteLine(学号:{0},姓名:{1},性别:{2},id,name,sex);}}classProgram{staticvoidMain(string[]args){ArrayListlist=newArrayList();Programpro=newProgram();Console.WriteLine(请输入学生信息(学号姓名性别),用空格隔开,然后回车,停止录入输入exit);pro.AddStudent(list);Console.WriteLine(请输入学生学号,然后回车);pro.FindStudent(list);}publicvoidAddStudent(ArrayListlist){while(true){stringstr=Console.ReadLine();if(str==exit)return;string[]values=str.Split('');Studentstudent=null;;try{得分评分人student=newStudent();student.id=values[0];student.name=values[1];student.sex=values[2];}catch{}list.Add(student);}}publicvoidFindStudent(ArrayListlist){while(true){stringid=Console.ReadLine();if(id==exit)return;for(inti=0;ilist.Count;i++){Studenttemp=(Student)list[i];if(temp.id==id)temp.print();}}}}}
本文标题:面向对象程序设计试卷及答案
链接地址:https://www.777doc.com/doc-6277138 .html