?《C#程序设计》课程考试卷-A 卷
?? ?
一、单项选择题(每题 2 分,共 20 分)
1.short 类型的变量在内存中占据的位数是 (??? )。
A.? 8?? ?
B. 16?? ?
C. 32
D. 64
?
2.对千 int[ 4,5]型的数组 a, 数组元素 a[2,3] 存在数组第 (??? )个位置上。
A.? 11?? ?
B.? 12?? ?
C.? 14?? ?
D.? 15
?
3.设 int 类型变量 x,y,z 的值分别是2、3、6 , 那么执行完语句(z=y=x=z) 后他们的值为 (??? )。
A.? 2,3,6 ??
B.? 2,2,2
C.? 6,6,6??
D.? 3,3,3
?
4.以下说法中不正确的是 (??? )。
A.构造函数和析构函数都不能有返回值
B.构造函数可以是静态的
C. 一个类只能有一个构造函数
D.一个类只能有一个析构函数
?
5.以下不属千object 类型的成员方法是 (??? )。
A.ToString()?? ?B.Dispose()?? ?C.Equals()??? .GetType()
?
6.设 double 型变量 x 表示一个角度, 那么将其转化为弧度的表达式为 (??? )。
A.x* 180/Math.PI?? ?B.x*360/Math.PI?? ?C.x*Math.Pl/180?? ?D.x*Math.PI/360
?
7.令 object x=100,? 那么下列表达式会引发异常的是 (??? )。
A.int i=x
B.string s=(string)x;
C.bool b=x is string;
D.object o=x as string
?
8.下列能够被创建对象的是 (??? )。
A.接口
B.抽象类
C.委 托
D.只有私有构造函数的类
?
9. 关千接口和抽象类,下列说法中正确的是 (??? )。
A.接口不能创建对象,而抽象类可以?? ?
B.接口不能包含字段, 而抽象类可以
C. 抽象类中的方法必须是抽象方法?? ?
D.接门中的方法也可以有实现代码
?
?
10.关千 finally 代码段,下列是说法正确的是 (??? )。
A.仅在程序正常时执行?? ?
B.仅在程序发生异常时执行
C.在程序发生异常时会被跳过?? ?
D.无论程序是否发生异常都会被执行
?
二、填空题(每空 2 分, 共 20 分)
1.一般将类的构造方法声明为(?????????????????????? )访问权限。如果声明为 private, 就不能创建该类
的对象。
2.在方法定义中, virtual 含义:(?????????????????????? )。?? ?
3.C#数组元素的下标从(?????????????????????? )开始。
4.元素类型为 double 的 2 行 5 列的二维数组共占用(?????????????????????? )字节的存储空间。
5.对于方法,参数传递分为值传递和(?????????????????????? )两种。
6.传入某个属性的 SET 方法的隐含参数的名称是(?????????????????????? )。
7.能用 foreach 遍历访问的对象需要实现(?????????????????????? )IEnumerable 接口或者声明。
8.委托声明的关键字是 (?????????????????????? )。?? ?
9.C#的类不支持多重继承, 但可以用(?????????????????????? )来实现。
10.C#中所有的类型实质上都是从(?????????????????????? )类派生而来的。
?
?
?
三、判断题(正确打√, 错误打 X ;每题 2 分,共 20 分)
1.不能指定接口中方法的修饰符。 (??? )
2.DotNet 包含两个部分,即公共语言运行时和框架类库。 (??? )
3.在同一行上可以书写多条语句,每条语句间用分号分隔。 (??? )
4.在数据类型转化时,只能通过类型转换关键字或 Convert? 类实现。 (??? )
5.在定义数组时不允许为数组中的元素赋值。? (??? )
6.定义枚举时至少为其中的一个枚举成员赋值。 (??? )
7.接口与类同样是面向对象程序设计的核心,是创建对象的模版。 (??? )
8.委托是将方法作为参数传递给另一方法的一种数据类型,事件与委托没有关系。? (??? )
9.如果要实现重写,在基类的方法中必须使用 virtual 关键字,在派生类的方法中必须使用
overrides关键字。 (??? )
10.在 C#类中, this 代表了当前类本身。 (??? )
?
?
四、简答题(每题 8 分,共 40 分)
1.怎样使一个类不能被外部创建对象。
2.简述 C#对接口方法的两种实现方式 。
3.什么叫做匿名方法, 他的作用是什么。
4.简述在 WPF 中对控件应用动画的两种基本方式。
5.C#中事件和委托的关系是什么,类的事件成员和一般的委托型成员有什么不同。
?
?
?
《C#程序设计》课程考试卷-B 卷
?
一、单项选择题(每题 2 分, 共 20 分)
1.下列类型中,不支持 IEnumerable<T>接口的是(?????? )。
A.T[]???? B.? List<T>? C.Queue<T>?? D.Dictinary<K,T>
?
2.Nullable<T> 是(?????? )。
A.class?? ?B.? struct?? ?C. interface? D.以上都不是
?
3.单击一个 CheckBox 控件, 那么下列事件的引发顺序为(?????? )。
A.Click,MouseDown,MouseUp,CheckedChanged
B.MouseDown,Click,MouseUp,CheckedChanged
C.MouseDown,Click,CheckedChanged,MouseUp
D.MouseDown,CheckedChanged,Click,MouseUp
?
4.CLR 是指 (?? ?)。
A.公共类型系统 B.? 公共语言规范?? ? C. 公共语言运行? D.动态语言运行
?
5.关千 C#语言的基本语法 , 下列说法正确的是(?????? )。
A.C#语言使用 using 关键字来引用 N ET 预定义的名字空间
B.用 C#编写的程序中, Main 函数是唯一允许的全局函数
C.C#语言中使用的名称严格区分大小写
D.C#中一条语句必须写在一行内
?
?
6.在 C#中,每个 int 类型的变量占用(?????? )字节的内存。
A. 1 btye(0---255) sbtye(-128---127) bool( ture,false)
B. 2 short(-32768---32767) unshort(0---32767) char
C.4 int uint float
D.8 long ulong double 12 decimal 精确的十进制值
?
7.在 C#中, 表示一个字符串的变量应使用(?????? )语句定义。
A.CString str;?? ?B.? string str;?? ?C.?? Dim str as string?? ?D. char* str;
?
8.要在 Web 应用程序中访问 URL 地址中的参数字符串,(?????? )可访间对象的QueryString 属性。
A.HttpApplication?? ?B. HttpRequest?? C.HttpResponsive? D.HttpBrowserCapability
?
9.以下可在客户端缓存网页数据的 是(?????? )。
A.applicationState?? ?B. SessionState? C.Cache?? D. Cookie
?
10.在 Web Service 中定义的方法,能够从网络上访问的是(?????? )。
A.非私有方法?? ?B. 公有方法? C.?? 扩展方法??? D. 使用[WebMethod]特性修饰的方法
?
二、填空题(每空 2 分,共 20 分)
1.当在程序中执行到 (????? )语句时, 将结束所在循环 语句中循环体的一次执行。
2.枚举是从 System. ?? ?类继承而来的类型。
3.类中声明的属性往往具有 get()和 ?? ?两个访问器。
4.C#提供一个默认的无参构造函数, 当我实现了另外一个有一个参数的构造函数时,还想保留这个无参数的构造函数。这时我应该写??????? 构造函数。
5.接口(interface)是指:????? ??? ?(public abstract method)的类。这些方法必须在子类中被实现。
6.在 switch 语句中, 每个语句标号所含关键字 case 后面的表达式必须是 ?? ?
7.在 while 循环语句中,一定要有修改循环条件的语句, 否则, 可能造成 ?? ?
8.传入某个属性的 SET 方法的隐含参数的名称是 ?? ?
9.C#的类不支持多重继承,但可以用 ?? ?来实现。
10.C#数组类型是一种引用类型,所有的数组都是从 System 命名空间的 ?? ?类继承而来的引用对象。
?
三、判断题(正确打√, 错误打X ; 每题 2 分,共 20 分)
1.静态类和实例类的区别在于:静态类不需要初始化即可直接使用,实例类需要进行实例化,生成对象才可使用。(????????? )
2.用 Interval 属 性设 置 Timer 控件Tick 事件发生的时间间隔单位为秒。(????????? )
3.设置图片框控件的 SizeMode 属性为 Stretchlmage 时, 图片可以按图片框的大小比例缩放显示。(??????? )
4. 可以重写私有的虚方法。(??????? )
5. 在 C#中,所有类都是直接或间接地继承 System.Object 类而得来的。(??????? )
6. 在 C#中, 任何方法都不能实现多继承。(??????? )
7. 在 C#中,子类不能继承父类中用 private 修饰的成员变量和成员方法。(??????? )
8. 菜单项标题中有含有带下划线的字符,这是快捷键。(??????? )
9. 可以阻止某一个类被其他类继承。(??????? )
10. 一个窗体中可以有多个弹出式菜单。(??????? )
?
四、简答题 (每题 8 分,共 40 分)
1.说说抽象方法和虚拟方法的相同点与不同点。
2.采用 new 和 override 修饰符所修饰的方法, 二者之间的区别是什么。
3.编写程序,输入一个字符串, 求输入的字符串中包含字符串 str 的个数。
4.简述 http://doc.guandang.net 中的 DbConnection、DbCommand、DbDataReader 这三个类型的作用以及他们之间的关系。
5.举出三个在网站应用程序中跳转到另一个网页的方法。