C#期末复习题库.docx
《C#期末复习题库.docx》由会员分享,可在线阅读,更多相关《C#期末复习题库.docx(17页珍藏版)》请在冰豆网上搜索。
C#期末复习题库
14-15-2《面向对象程序设计C#(B)》期末复习
2015.6
一、考试题型
1、选择题(10*2’,共20分)
2、填空题(10*2’,共20分)
3、按要求完成各小题(6小题,共40分))
1)阅读程序写运行结果、程序功能
2)程序填空
3)控件、属性、事件
4)类(访问属性、字段、属性、构造函数、方法)、子类、继承、虚拟、重写、对象、方法调用
4、编程题(1*8’,1*12’,共20分)
二、知识点
第1章.NET和C#概述
.NETFramework的两个主要组件
使用.NETFramework可开发的应用程序类型
C#程序结构
第2章C#编程基础
1、基础知识
标识符
数据类型值类型引用类型数组类型转换
常量、变量、运算符、表达式
表达式的运算
第3章C#程序流程控制
顺序、分支(选择)、循环
各语句的语法格式(输入、输出、赋值、结构语句、转移语句)
ifswitchforwhiledo…whileforeach
breakcontinuegotoreturn
要求:
熟练掌握,会读程序、写程序。
\
第4章数组和字符串
数组的声明与使用(一维、二维)
字符串的使用
第5章C#实现OOP基础
类、类的成员(字段、属性、方法、构造函数、析构函数)、访问权限
对象方法调用
静态方法
方法重载
第6章继承和多态
继承、多态、抽象、方法重载
方法:
抽象方法、虚拟方法
接口密封
第7章Windows窗体编程基础
1、常用控件(Form、Label、TextBox、RichTextBox、Button、CheckBox、RadioButton、ListBox、ComboBox等)的控件名、属性、方法、事件
2、相似控件的区别:
如TextBox和RichTextBox、CheckBox和RadioButton等
第8章深入Windows控件编程
MenuStrip、ContextMenuStrip、ToolStrip、StatusStrip、GroupBox的控件的用法
ImageList、ListView、DateTimePicker、Timer、ProgressBar的控件名、属性、方法、事件
MDI窗体的属性设置
第9章ADO.NET访问数据库
Connection、Command、DataReader、DataAdapter、DataSet对象的作用和用法
DataGridView的用法
课后选择、填空
第10章集合与泛型
ArrayList、Hashtable、List、Dictionary的特点和用法
课后选择、填空
第11章文件和数据流操作
File类和FileInfo类
Directory类和DirectoryInfo类
FileStreamStreamWriterStreamReader类
课后选择、填空
第12章Windows应用程序打包部署
课后选择、填空
三、复习题
(一)选择题
1.C#是一种面向( D)的程序设计语言。
A.过程B.用户C.方法D.对象
2.下面的标识符错误的是(C)。
A.f_fangB.stu1C.yes@D.ifor
3.C#中每个int类型的变量占用( C)个字节的内存。
A.1B.2C.4D.8
4.假设在程序中a、b、c均被定义成整型,所赋的值都大于1,则下列能正确表示代数式
的表达式是(C)。
A.1.0/a*b*cB.1.0/a/b/cC.1/(a*b*c)D.1/a/b/(float)c
5.C#中,新建一字符串变量str,并将字符串”Tom'sLivingRoom”保存到串中,则应该使用下列( D)语句。
A.stringstr=“Tom'sLivingRoom”;
B.stringstr(“Tom'sLivingRoom”);
C.stringstr(“Tom”sLivingRoom”);
D.stringstr=“Tom\'sLivingRoom”;
6.以下正确的描述是(B)。
A.函数的定义可以嵌套,函数的调用不可以嵌套
B.函数的定义不可以嵌套,函数的调用可以嵌套
C.函数的定义和函数的调用均可以嵌套
D.函数的定义和函数的调用均不可以嵌套
7.按下按钮时会发生( C)事件。
A.ButtonB.PushC.ClickD.以上都不对
8.假定一个10行20列的二维整型数组,下列哪个定义语句是正确的(C)。
A.int[]arr=newint[10,20]B.int[]arr=intnew[10,20]
C.int[,]arr=newint[10,20]D.int[,]arr=newint[20;10]
9.下面的循环将被执行(C)次?
for(inti=9;i>1;i--)
A.3B.4C.8D.10
10.在下面循环语句中循环体执行的次数为(C)。
for(inti=0;iif(i>n/2)break;
A.n/2B.n/2+1C.n/2+2D.n-1
11.下面关于继承的说法正确的是(A)。
A.派生类可以隐式地转换为它的基类。
B.所有的类成员都可以被继承。
C.C#可以进行多重继承。
D.在派生类中可以通过隐藏来删除基类的成员。
12.下面有关命名空间的说法,正确的是____D____
A.一个源代码文件只能包含一个名称空间。
B.名称空间是不可以嵌套的。
C.使用不同名称空间内相同名称的方法会产生名称冲突。
D.可以用using语句来访问一个名称空间中所有的类。
13.下面有关if语句和switch语句说法错误的是___D____
A.if语句有三种基本形式:
“单分支选择”、“如果/否则”以及“多情形选择”。
B.switch结构对处理多分支选择结构是非常方便的。
C.break语句可以使程序退出整个switch结构。
D.if语句中是不可以嵌套if语句的
14.在类的定义中,类的B描述了该类的对象的行为特征。
A.类名B.方法C.所属的名字空间D.私有域
15.CLR的中文全称是A。
A.公共语言运行库B.公共类型系统C.公共类型规范D.中间语言
16.能作为C#程序的基本单位是(C)。
A.字符B.语句C.函数D.源程序文件
17.下面的类型中属于引用类型的是(C)
A.整数类型B.字符类型C.字符串类型D.布尔类型
18.下面有关变量和常量的说法正确的是____C____
A.变量在程序的运行中值是不能改变的,而常量的值可以改变。
B.如果在程序中给常量多次赋值,那么常量保存的是最后一次的值。
C.在给常量赋值的表达式中不能出现变量。
D.变量定义的时候应该有const关键字
19.下面关于Main方法的说法正确的是___A_____
A.Main方法可以有int和void两种返回值类型。
B.在C#应用程序中Main方法不是必需的。
C.一个C#应用程序可以有多个Main方法。
D.Main方法前的static关键字是可选的。
20.假设所有的变量(i、j)都是整型,并被初始化为2,那么表达式“i*j>=0&&j-2<=0”的结果是多少?
___C____
A.0B.4C.TrueD.在运行之前无法估计表达式的值
21.下面(D)文件一般不是安装文件。
A.setup.exeB.setup.msiC.install.exeD.readme.txt
22.While语句和do-while语句的区别是___C_____
A.while语句容易导致死循环
B.while语句的执行效率更高。
C.无论条件是否成立,do-while语句都要先执行一次循环体。
D.do-while语句可以写出结构更复杂的循环结构。
23.C#中,简单数据类型包括___B_____
A.整数类型、字符类型、枚举类型和结构类型
B.整数类型、字符类型、布尔类型和实数类型
C.整数类型、字符类型、结构类型和类类型
D.整数类型、字符类型、布尔类型、结构类型和类类型
24.每个C#语句以____D____结束。
A.右大括号”}”B.回车C.点号”.”D.分号”;”
25.在C#中最基本的类是C。
A、ControlB、ComponentC、ObjectD、Class
26.以下论述不正确的是D。
A、对象变量是对象的一个引用。
B、对象是类的一个实例。
C、一个对象可以作为另一个对象的数据成员。
D、对象不可以作为函数的参数传递。
27.要使类的成员可以被本类代码和派生类代码访问,其他代码不可访问,可设置该成员的访问类型为D。
A、使用public关键字。
B、使用private关键字。
C、使用const关键字。
D、使用protected关键字。
28.使用继承的优点是A。
A、基类的大部分功能可以通过继承关系自动进入派生类。
B、继承将基类的实现细节暴露给派生类。
C、一旦基类实现出现bug,就会通过继承的传播影响到派生类的实现。
D、可在运行期决定是否选择继承代码,有足够的灵活性
29.在一个对象中,可以继承并直接使用它基类的所有成员,除了D。
A、public字段和方法B、protected字段和方法
C、published字段和方法D、private字段和方法
30.关于泛型集合Listlist=newList()的操作代码正确的是(C)。
A.list.Remove(0)B.list.RemoveAt(“阿卜杜拉“)
C.stringname=list[0]D.stringname=list[“阿卜杜拉“]
31.在编写c#程序时,若需要对一个数组中的所有元素进行处理,则使用(B)循环体最好.
A.while循环B.foreach循环C.do循环D.for循环
32.在.NET中,创建一个文件流,指定打开一个文件,如果不存在,就创建一个新文件,FileMode的值应该是(B)。
A.OpenB.OpenOrCreateC.CreateD.CreateOrOpen
33.在C#中,引用命名空间System的正确语句是:
(A)
AusingSystem;B#import;
CusesSyetem;D#include;
34.以下类MyClass的属性count属于(A)属性.
classMyClass
{
inti;
intcount
{
get{returni;}
}
}
A.只读B.只写C.可读写D.不可读不可写
35.从数据库读取记录,不可能用到的方法是(D)。
A.ExecuteNonQuery()B.ExecuteReader()
C.ExecuteScalar()D.Read()
36.创