201X-201X-1C#复习题.doc

上传人:yyf 文档编号:8634057 上传时间:2020-12-08 格式:DOC 页数:24 大小:1.68MB
返回 下载 相关 举报
201X-201X-1C#复习题.doc_第1页
第1页 / 共24页
201X-201X-1C#复习题.doc_第2页
第2页 / 共24页
201X-201X-1C#复习题.doc_第3页
第3页 / 共24页
201X-201X-1C#复习题.doc_第4页
第4页 / 共24页
201X-201X-1C#复习题.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《201X-201X-1C#复习题.doc》由会员分享,可在线阅读,更多相关《201X-201X-1C#复习题.doc(24页珍藏版)》请在三一文库上搜索。

1、.2014-2015-1C#桌面程序应用开发复习题一、 选择题1、装箱是把值类型转换到( b )类型。 a)数组 b)引用 c)char d)string 2、下列哪个类型的对象是ADO.NET在非连接模式下处理数据内容的主要对象?( d ) a) Command b) Connection c) DataAdapter d) DataSet3、枚举类型是一组命名的常量集合,所有整型都可以作为枚举类型的基本类型,如果类型省略,则定义为( a )。a) int b) sbyte c) uint d) ulong4、面向对象编程中的“继承”的概念是指( b )a) 对象之间通过消息进行交互 b)派

2、生自同一个基类的不同类的对象具有一些共同特征c)对象的内部细节被隐藏 d) 派生类对象可以不受限制地访问所有的基类对象5、在C#的类结构中,class关键字前面的关键字是表示访问级别,下面哪个关键字表示该类只能被这个类的成员或派生类成员访问? ( d)。a) publicb) privatec) internald) protected6、下列类型中, 哪些不属于引用类型?(b)。a) Stringb) intc) Class d) Delegate7、数组pins的定义如下: int pins=new int49,2,3,1; 则pins1=( b ) a) 1 b) 2 c) 3 d) 9

3、8、创建数据库连接使用的对象是( a)。 a) Connection b) Command c) DataReader d) DataSet9、调用方法时,如果想给方法传递任意个数的参数时,应选用哪个关键字( c)。a) refb) out c) paramsd) 无特殊要求10、C#中TestClass为一自定义类,其中有以下属性定义public void Property开卷考使用以下语句创建了该类的对象,并使变量obj引用该对象:TestClass obj = new TestClass();那么,可通过什么方式访问类TestClass的Property属性? ( a ) a) Obj,

4、Property; b) MyClass.Property;c) obj : Property; d) obj.Property ();11、下列关于C#面向对象应用的描述中,哪项是正确的?(c)。a) 派生类是基类的扩展,派生类可以添加新的成员,也可去掉已经继承的成员b) abstract方法的声明必须同时实现 c) 声明为sealed的类不能被继承d) 接口像类一样,可以定义并实现方法12、C#中导入某一命名空间的关键字是( a )。a) using b) use c)import d) include13、一般情况下,异常类存放在什么命名空间中?(b)。a) 生成异常类所在的命名空间 b

5、) System.Exception命名空间c) System.Diagnostics命名空间 d) System命名空间 14、若将数据库中的数据填充到数据集,应调用SqlDataAdapter的(c)方法。a) Openb) Closec) Filld) Update15、若将数据集中所作更改更新回数据库,应调用SqlAdapter的(a)方法。a)Updateb) Closec) Filld) Open16、C#中MyClass 为一自定义类,其中有以下方法定义public void Hello()使用以下语句创建了该类的对象,并使变量obj 引用该对象:MyClass obj = ne

6、w MyClass();那么,可如何访问类MyClass 的Hello 方法?(a)。a) obj.Hello(); b) obj:Hello(); c) MyClass.Hello(); d)MyClass:Hello();17、在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( a )成员,来指定操作系统打开一个现有文件并把文件读写指针定位在文件尾部。a) Append b) Create c) CreateNew d) Truncate 18、有说明语句double, tab=new double2,3;那么下面叙述正确的是(c)。a) tab是一个数组维

7、数不确定的数组,使用时可以任意调整b) tab是一个有两个元素的一维数组,它的元素初始值分别是2,3 c) tab是一个二维数组,它的元素个数一共有6个d) tab是一个不规则数组,数组元素的个数可以变化 19、以下说法正确的是(b)。a) 虚方法必须在派生类中重写,抽象方法不需要重写b) 虚方法可以在派生类中重写,抽象方法必须重写c) 虚方法必须在派生类中重写,抽象方法必须重写d) 虚方法可以在派生类中重写,抽象方法也不需要重写20、在定义类时,如果希望类的某个方法能够在派生类中进一步进行改进,以处理不同的派生类的需要,则应将该方法声明成( c )。a) sealed方法 b)public方

8、法 c)vitual方法 d)override方法21、面向对象三个基本原则是( c )。a) 抽象,继承,派生 b) 类,对象,方法c)继承,封装,多态 d) 对象,属性,方法22、在数组中对于for 和 foreach 语句,下列那些选项中的说法不正确?( b )。a) foreach语句能使你不用索引就可以遍历整个数组b) foreach语句总是从索引1遍历到索引Lengthc) foreach总是遍历整个数组d) 如果需要修改数组元素就必须使用for语句23、c#的引用类型包括类、接口、数组、委托、object和string.其中object( d )根类。a) 只是引用类型的 b)

9、只是值类型的 c) 只是string 类型的 d) 是所有值类型和引用类型的24、C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对(b)进行初始化,静态构造函数只能对静态成员进行初始化。a) 静态成员 b) 静态成员和非静态成员 c) 非静态成员 d)动态成员25、当运行程序时,系统自动执行启动窗体的( C )事件。a) Click b)DoubleClick c) Load d) Activated26、若要使命令按钮不可操作,要对( B )属性进行设置。a) Visible b)Enabled c) BackColor d) Text27、在设计窗口,可以通过( A )属性

10、向列表框控件如ListBox的列表添加项。a) Items b)Items.Count c) Text d) SelectedIndex28、在VS集成开发环境中有两类窗口,分别为浮动窗口和固定窗口,下面不属于浮动窗口的是( D )a) 工具箱 b)属性 c) 工具栏 d)窗体29、引用ListBox(列表框)最后一个数据项应使用( C )语句a) ListBox1.ItemsListBox1.Items.Countb)ListBox1.ItemsListBox1.SelectedIndexc) ListBox1.ItemsListBox1.Items.Count-1 d) ListBox1.

11、ItemsListBox1.SelectedIndex-130、引用ListBox(列表框)当前被选中的数据项应使用( B )语句a) ListBox1.ItemsListBox1.Items.Countb)ListBox1.ItemsListBox1.SelectedIndexc) ListBox1.ItemsListBox1.Items.Count-1 d) ListBox1.ItemsListBox1.SelectedIndex-131、下面代码的输出结果是(d)。 int x = 5;int y = x+;Console.WriteLine(y);y = +x;Console.Writ

12、eLine(y); a)5 6 b) 6 7 c) 5 6 d) 5 7 34、在C#语言的main方法定义体中,下面( )是错误的。 C A) static void Main(string args) B) static int Main(string args) C) static Main(string args) 缺少定义返回类型D) static int Main( ) 35、在C#语言中,下面的关于公共类型常量定义正确的是( ) AA) public const int dayMax=7;B) public const dayMax=7;C) const int dayMax=7

13、;D) public const int day-Max=7; 变量名错误,不能有“-”36、在C#中,关于下面代码的输出结果正确的是( )。 Dstatic void Main(string args)int array = new int3 0, 1, 2;foreach(int temp in array)temp+; forach循环只能读,不能更改Console.WriteLine(temp);A) 0 B) 1 C) 2 D) 编译错误37、下面C#中,使用String类把字符串“abcd”截取成“cd”,应采用的方法是( )。 DA) Compare() B) IndexOf()

14、 C) Join() D) Substring()38、在C#中,int num=2 采用Convert方法转换为单精度浮点型,应采用( )方法。 BA) Convert.ToInt32() 转换为int型B) Convert.ToSingle() 转换为单精度浮点型C) Convert.ToDouble() 转换为双精度型D) Convert.ToString()39、在sql server中,下面( )不属于sql server数据库的数据类型。 AA) bool B) datetimeC) bit D) image40、在SQL Server假设订单表order用来存储订单信息,cid代

15、表客户编号现在要查询每个客户的订购次数以及客户编号,以下语句正确的是( )。 D A) select conut(ciD),cid from ordersB) select conut(ciD),cid form orders order by cidC) select count(ciD),cid form orders having count(ciD0)D) select count(ciD),cid from orders group by cid 要查询每个客户,要进行分组查询41、在SQL Server中,现有订单表orders,包含用户信息userid,产品信息productid

16、,以下( )语句能够返回至少被订购过两回的productid。 DA) select productid from orders group by productid where count(productiD1)B) select productid from orders having count(productiD1) order by productidC) select productid from orders where having count(productiD1) group by productidD) select productid from orders group

17、 by productid having count(productiD1 先进行分组,再用having筛选42、在表Employee中有一列为EmpName,执行删除语句: BDELETE FROM Employee WHERE EmpName LIKE _a e%下面包含EmpName 列的( )值的数据行可能被删除。A) WhyteB) Carson 只允许第二个字母为a或eC) AnnetD) Hunyer 43、在C#中,下列代码的运行结果是()。 A string appName=ACCP4.0ASP.NET; foreach(char ch in appName) if(ch=4

18、) break; Console.Write(ch); A) ACCP 截取四个之后,ACCP B) 40C) ASP.NET D) ACCPASP.NET44、在C#语言的类定义体中,下面( )访问修饰符可以访问该类的成员。 DA) private B) public C) internal D) 以上选项均可45、下列执行数据的删除语句在运行时不会产生错误信息的是() B C(选择二项)A) delete * from employee where sgrade=6 delete与from之间不允许有任何东西B) delete from employee where sgrade=6C)

19、delete employee where sgrade=6D) delete employee set sgrade=6 不符合delete语法46、在C#中,要使用ExecuteReader()方法查询获取数据库中的数据集,需要创建()类型对象. A(选择一项)A) SqlCommand 返回SqlDataReaderB) SqlConnectionC) SqlDataAdapterD) DataSet47、在c#中,关于命名空间说法正确的是()。 B C(选择二项)A) 采用import关键字添加命名空间引用 Java中用importB) 采用using关键字添加命名空间引用C) 添加命

20、名空间引用必须添加在当前命名空间外部D) 添加命名空间引用可以添加在当前命名空间内部48、在c#中,下面关于int.Parse()方法使用正确的是()。 AA) String value=24; int temp=int.Parse(value);B) int temp=int.Parse(24.5);C) int temp=int.Parse(a);D) int temp=int.Parse(24);49、下面关于命名空间说法错误的是() CA) 命名空间用于组织相关的类型B) 命名空间可以嵌套C) 在同一个应用程序中,不同的命名空间中不允许有相同名称的类 允许有 D) using关键字用于

21、引用命名空间50、下面关于DataSet描述正确的是() AA) 不直接和数据库打交道,与数据库类型没有关系 关闭数据库,DataSet依然是可用的,DataSet在内部是用XML来描述数据的,由于XML是一种与平台无关、与语言无关的数据描述语言,而且可以描述复杂关系的数据,比如父子关系的数据,所以DataSet实际上可以容纳具有复杂关系的数据,而且不再依赖于数据库链路。B) 用于读取只读的数据C) DataSet中的数据存储在数据库服务器的内存中D) 在断开数据库连接时,不可以操作数据库51、在C#中,下面关于属性(UserName)定义正确的是() C D(选择二项)A) string U

22、serNameget get少;B) string UserNameset;C) string UserNameset;get;D) private string userName; public string UserName setuserName=value; getreturn userName; 52、以下选项中,()符合类和对象的关系 BA) 猫和老虎 同属于动物类B) 大学和北京大学 从属关系C) 学生和中学生 D) 中国和中国人53、下面选项中,()是对常量正确的声明 B A) int MaxCount=1; 不符合常量定义语法 :const 数据类型 变量名;B) const

23、 int MaxCount=1;C) int const MaxCount=1; comst顺序与int错误D) const MaxCount=1; 没有定义变量类型54、设 Students 表有三列number1,number2,number3 ,并且都是整数类型,则以下()查询语句能按照number2列进行分组,并在每一组取number3的平均值 C(选择一项)A) select avg(number3) from students 没有分组B) select avg(number3) from students order by number2 不需要排序C) select avg(n

24、umber3) from students group by number2 使用avg()得到number3平均值,并进行number2的分组D) select avg(number3) from students group by number3,number255、conn是一个可用的数据库连接对象,下面一段代码再生成解决方案时出错,错误在第()行。 C1 string sql=select count(*) from class where gradeid=1; /编写sql语句2 SqlCommand cmd=new SqlCommand(sql,conn); /创建command对

25、象3 conn.Open(); /打开数据库连接4 int num=cmd.ExecuteScalar(); 应改为int num = (int) cmd.ExecuteScalar(); 原因:.ExecuteScalar()方法的返回值是odject类型的用该方法的返回值为其他变量进行赋值操作时,必须进行显示的类型转换5 conn.Close(); /关闭数据库连接A) 2B) 3C) 4D) 556、c#中,引用命名空间关键字是() BA) namespace 命名空间B) usingC) import Java中D) input57、在C#中,要获取“select * from stu

26、dent”的查询结果,则通过SqlCommand对象的()方法实现 BA) ExecuteNonQuery B) ExecuteReaderC) ExecuteScalar Count(*)D) Fill58、在c#中,下面关于访问修饰符描述正确的是() DA) private定义的字段在类外可以调用 private私有B) public定义的字段只能在类外调用 公开的,任何时候可以调用C) private和public定义的字段在任何地方都可以调用 D) 以上全部分错误59、在c#中,关于引用传递说法正确的是() CA) 引用传递不用加ref关键字B) 使用引用传递值不会发生改变C) 使用引

27、用传递值会发生改变D) 引用类型和值传递结果一样60、在c#中,下列关于属性说法,正确的是() DA) set为只读属性,可以用来读取值 get只读属性,set读取属性B) get为只写属性,可以设置值 C) set为只写属性,可以用来读取值D) 定义一个属性,类型必须与它所访问的字段类型一致61、c#中,要向数据库发送如下sql语句,最好使用SqlCommand类的()方法。 Aupdate 学生表 set 年龄=年龄+1 where 年龄18 A) ExecuteNonQuery() 增删改方法B) ExecuteScalar()C) ExecuteReader()D) b和c62、在c#

28、程序中,使用try-catch结构进行异常处理,下列选项中会出现编译错误的是 C、D(选择二项) A) try catchB) tryfinallyC) try D) catchfinally63、在下列C# 代码中,(A)是类Teacher 的属性。Public class Teacherint age=13;private string Namegetreturn name;setname=value;public void SaySomething()/A Name B name C age D SaySomething64、分析一下C#片段中的属性,该属性是(C)属性。private

29、string name;Public string Namegetreturn name;65、构建Windows窗体以及其所使用空间的所有类的命名空间是下列哪个选项(D)A) System.IO B) System.DataC) System.Text D) System.Windows.Forms66、下列关于多态的说法中,哪个选项是正确的(D)A)重写虚方法时可以为虚方法指定别称B)抽象类中不可以包含虚方法C)虚方法是实现多态的唯一手段D)多态性是指以相似的手段来处理各不相同的派生类。67、在C#语言中,以下关于继承的说法错误的是(B)。A.一个子类不能同时继承多个父类 B任何类都是可以

30、被继承的C.子类继承父类,也可以说父类派生了一个子类D.Object类是所有类的基类68、以下关于接口的说法,不正确的是(C) A.接口不能实例化 B. 接口中声明的所有成员隐式地为public和abstract C.接口默认的访问修饰符是private D.继承接口的任何非抽象类型都必须实现接口的所有成员。69、改变窗体的标题,需修改的窗体属性是( A )。 A. Text B. Name C.Title D. Index70、下列关于抽象类的说法错误的是( A )。A. 抽象类可以实例化 B. 抽象类可以包含抽象方法C. 抽象类可以包含抽象属性 D. 抽象类可以引用派生类的实例71、异常捕

31、获发生在(B)块中?A. try B.catch C. finally D. throw72、下面关于抽象类的说法正确的是?(C)A. 抽象类只能做子类 B. 抽象类可以被实例化C 抽象类不能被实例化 D. 一个抽象类只能有一个子类73、C#源程序文件的拓展名是(D)A、vb B、c C、cpp D、cs74、和C#中的所有对象一样,窗体也是对象,是(C)类的实例A、Label B、Controls C、Form D、System75、c#程序中,可使用trycatch 机制来处理程序出现的(B)错误A. 语法 B. 运行 C. 逻辑 D. 拼写76、27.在C#语言中,下列异常处理结构中有错

32、误的是(a) a)catchfinally b) tryfinally c) trycatchfinallyd) trycatch77、在以下C#类中,(b)是控制台类,利用它我们可以方便的进行控制台的输入输出。a) Control b) Console c) Cancel d) Write 78、WinForms程序中,如果复选框控件的 Checked属性值设置为 True,表示( A )。A.该复选框被选中 B.该复选框不被选中C.不显示该复选框的文本信息 D.显示该复选框的文本信息 79、C#的数据类型有( B ) A 值类型和调用类型 B 值类型和引用类型 C 引用类型和关系类型 D

33、关系类型和调用类型 80、如果要修改表中的数据,一般的做法为() AA) 使用SqlCommand的ExecuteNonQuery方法 增删改的方法B) 使用SqlCommand的ExecuteReader方法 读取查询结果集的方法C) 使用SqlCommand的ExecuteScalar方法 查询多个值的方法D) 使用SqlCommand的EndExecuteNonQuery方法81、下面关于C#中值类型和引用类型的描述正确的是(D)。A)结构属于引用类型 B)字符串属于值类型C)所有内置的数据类型都是值类型,所有用户定义的数据类型都是引用类型D)值类型变量直接存放真正的数据,引用类型变量存

34、放的是指向真正数据的内存地址82、当整数a赋值给一个object对象时,整数a将会被_A_。A)拆箱 B)丢失 C) 装箱 D)出错83、在C#中设计类时,如何将一个可读可写的公有属性Name修改为只读属性?( A )A将Name的set块删除 B.将Name的set块置空C. 将Name的set块前加修饰符private D. 将Name添加readonly修饰符84、设置openfiledialog1引用一个openfiledialog对象,则打开该对话框的正确代码是( B )A. openfiledialog1.show(); B. openfiledialog1.showdialog(

35、);C. openfiledialog1.open(); D. openfiledialog1.openandshow();85、创建菜单后,为了实现菜单项的命令功能,应为菜单项添加( C )事件处理方法。A. DrawItem B. Popup C. Click D. Select86、在C#程序中,显示一个信息为“This is a test!”,标题为“Hello”的消息框,正确的语句是( B )A. MessageBox(“this is a test!”,”Hello”);B. MessageBox.Show(“this is a test!”,”Hello”); C. Messag

36、eBox(”Hello” , “this is a test!”);D. MessageBox.Show (”Hello” , “this is a test!”);87、下列关于异常处理的表述中哪些是正确的(D)?A try、catch、finally三个字句必须同时出现,才能正确处理异常B catch字句能且只能出现一次C try字句中所抛出的异常一定能被catch字句捕获D无论异常是否抛出,finally子句中的内容都会被执行。88、下列关键字中哪些不能作为修饰类(C)A:sealed B:abstract C:override D:public 89、以下语句不可以在屏幕上输出Hell

37、o,World语句是(C)A.Console.WriteLine(“Hello”+”,World”);B.Console.Write(“Hello0”,”World”);C.Console.WriteLine(“0,1”,”Hello,World”);D.Console.Write(“Hello,World”);90、在表Employee中有两列为年龄Age,职位Position,执行删除语句: BDelete from Employee where Age30 and Position=项目经理下面包含()值的数据行可能被删除。A) 小于30岁的项目经理和所有员工B) 小于30岁的项目经理

38、C) 小于30岁的员工和项目经理D) 小于30岁的员工或者项目经理二、程序填空1、下列程序完成了输出数组中的最大值和最小值,请补充程序中的空白处class Program static void Main(string args) MyClass m = new MyClass(); int s = 1, 6, 4, 7, 3, 87, 5 ; int smax, smin; m.MaxMin(s, out smax, out smin); Console.WriteLine(smax=0,smin=1,smax ,smin ); Console.ReadLine(); class MyCla

39、ss public void MaxMin(int a, out int max, out int min) max = min = a0; for (int i = 1; i max) max = ai; if (ai min) min = ai; 2、class Program static void Main(string args) Point p1 = new Point(); Point p2 = new Point(3, 4); Console.WriteLine(p1.x=0,p1.y=1, p1.x, p1.y); Console.WriteLine(p2.x=0:f,p2.y=1, p2.x, p2.y); Console.ReadLine(); class Point public double x = 0, y = 0; public Point() x = 1; y = 1; public Point(double a, double b) x = a; y = b; 程序最终的输出结果是_ p1.x=1,p1.y=1p2.x=3,p2.y=4 _

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 科普知识


经营许可证编号:宁ICP备18001539号-1