1、系别 班次 学号 姓名 .密封线以内答题无效C#程序设计语言(A卷)题号一二三四总分评卷教师分数说明:本试卷共四大题,试卷满分100分,考试时间120分钟。一判断题(每题2分,共20分,正确的打,错误的打)( ) 1“+、-、*、/、%、+、-均属于二元运算符。( ) 2字符串类型属性引用类型。( ) 3Visual Studio程序运行单步调试的快捷键是F11。( ) 4派生类可以继承基类的成员,以及方法的实现;派生的接口继承了父接口的成员方法,并且也继承父接口方法的实现。( ) 5当创建派生类对象时,先执行基类的构造函数,后执行派生类的构造函数。( ) 6隐式类型转换就是不需要声明目标类型
2、就可以进行的转换?( ) 7如果基类没有默认的构造函数,那么其派生类构造函数必须通过base关键字来调用基类的构造函数。( ) 8在C#中在派生类中重新定义基类类的虚函数必须在前面加override。( ) 9C一个类使用接口不允许使用多重继承。( ) 10在类中可以重载构造函数,C会根据参数匹配原则来选择执行合适的构造函数。二单项选择题(每题3分,共45分)(说明:每题有且仅有一个正确答案,请将正确答案填入下表)题号12345678910答案题号1112131415答案1. C#程序设计语言属于什么类型的编程语言: A高级语言 B自然语言 C机器语言 D汇编语言2. 如有int a=11;则
3、表达式(a+*1/3)的值是: A0 B3 C4 D123. 类的字段和方法的默认访问修饰符是:A public B private C protected D internal4. 对于在代码中下面哪段代码是正确的?A. public add(int x,int y)Return x+y;B. public void add(int x,int y)Return x+y;C. public int add(int x,int y)Return x+y;D. public int add(int x,int y)return (x+y);5. 下列语句是MyClass的一部分,obj是MyCl
4、ass的一个对象。 private class subclass public int data;void change(int x) x=1;public void test()subClass s=new subClass();s.data=100;change(s.data);Console.WriteLine(s.data);则调用obj.test()后。控制台输出( )。A. 100 B. 101 C. 0 D. 16. System.IO.File 对象的作用是A. 文件操作 B. GDI+图像输出C. 控件对象 D. 字符串操作对象7. 下面有关虚方法的描述正确的是( )。A.
5、虚方法能在程序运行时,动态确定要调用的方法,因而比非虚方法更灵活,更方便B. 在定义虚方法时,基类和派生类的方法定义语句中都要带上virtual修饰符C. 重写基类的虚方法时,为消除隐藏基类成员的警告,需要带上new修饰符D. 在重写虚方法时,需要同时带上override和virtual修饰符8. C#中TestClass为一自定义类,其中有以下属性定义public void Property使用以下语句创建了该类的对象,并使变量obj引用该对象:TestClass obj=new TestClass();那么,可通过什么方式访问类TestClass的Property属性()A. TestCl
6、ass.Progerty; B. TestClass. Property(); C. obj. Property; D. obj. Property();9. 已知类Base、MyClass 的定义如下class Base public void Hello()System.Console.WriteLine(Hello in Base!);class Derived : Base public void Hello()System.Console.WriteLine(Hello in Derived!);则下列语句在控制台中的输出结果为_。Derived x = new Derived();
7、x.Hello();A. Hello in Base! B. Hello in Derived!C. Hello in Base! D. Hello in Derived!Hello in Derived! Hello in Base!10. 下列说法中,哪个选项是正确的?()A. 一个类可以有多个基类但不可以有多个接口B. 一个类继承了接口可以不必实现接口中的所有成员C. 接口中可以定义public 成员D.派生类可以用Base关键字访问基类中的成员11. 下列关于构造函数的描述中,哪个选项是正确的?()A. 构造函数必须与类名相同 B. 构造函数不可以用private修饰C. 构造函数不能
8、带参数 D. 构造函数可以声明返回类型12. 引用数组元素时,数组下标的数据类型可以允许哪项类型?()A. 整型常量 B. 整型表达式C. 整型常量或整型表达式 D. 任何类型的表达式13. 以下类MyClass 的属性count 属于_属性。class MyClassint i;int countget return i; A. 只读 B. 只写 C. 可读写 D. 不可读不可写 14. 要让用户选择和浏览要打开的文件,应使用什么对话框?()A. FileDialog B. OpenFileDialo C. SaveFileDialo D. FolderBrowserDialog15. (
9、)关键字可以用来访问当前对象的基类对象。Aobject Bthis Cas Dbase三简答题(每题5分,共20分)1. 如何在C#中实现继承?2.简述面向对象与面向过程区别?.NET是面向对象还是面向过程?3.简述ADO.NET中几个重要对象是什么及作用。4.简述GDI+中的画布对象主要作用四综合题(共15分)1. 下面这段程序要完成的功能是:从输入的字符串中找出小写字母并输出到终端。请检查下列代码,找出所有错误的代码,并写出该行完整的正确代码。(5分)1 using System;2 public class Program3 4 static void Main(string args)
10、5 6 string inputString=Console.ReadLine();7 string lowerCase=string.Empty;8 foreach (char ch in inputString)9 if (ch=a|ch=z)10 lowerCase+=ch.ToString;11 Console.WriteLine(小写字母有:+lowerCase);12 13 2. 写一个计算ClassLib类,在其中包含一个加法。并写一个Main函数调用它。3. 创建一张数据表表名称 【userInfo】表结构如下: 写出一个sql语句返回fname 是【wang】并且fsex 是【男】的所有数据记录fId int (主键)fname (nvarchar(50)) fsex (nvarchar(50)) faddress (nvarchar(50)) ftel (nvarchar(50)) fpassword(nvarchar(50))第 5 页 共 5页