c# 综合测试题
填空题
1. 当整数a赋值给一个object对象时,整数a将会被__________?
2. float f = -123.567F;
int i = (int)f;
i的值现在是__________?
3. 委托声明的关键字是___________?
4. 在.Net托管代码中我们不用担心内存漏洞,这是因为有了__________?
5. 面向对象的语言具有__________性、__________性、__________性。
6. string strTmp = "abcdefg某某某";
int i= System.Text.Encoding.Default.GetBytes(strTmp).Length;
int j= strTmp.Length;
以上代码执行完后,i=__________ j=__________
判断题
1. 在C#中,装箱操作是将值类型转化成引用类型。
2. 接口中的成员不可以有访问域修饰符,但可以有其它修饰符。
3. 在C#中,索引器是专门用来访问对象中的数组信息的。
4. 在C#中,接口可以被多重继承而类不能。
5. 在C#中,int[,]是定义一个int型的二维数组。
6. 异常类对象均为System.Exception类的对象。
7. 当窗体最小化后,再次还原成为活动窗体时将自动触发Paint事件。
9. 声明委托实际上是声明了一个方法。
10. C#中任何事物都是对象。
选择题
1. 在ADO.NET中,对于Command对象的ExecuteNonQuery()方法和ExecuteReader()方法,下面叙述错误的是( )
a) insert、update、delete等操作的Sql语句主要用ExecuteNonQuery()方法来执行;
b) ExecuteNonQuery()方法返回执行Sql语句所影响的行数。
c) Select操作的Sql语句只能由ExecuteReader()方法来执行;
d) ExecuteReader()方法返回一个DataReder对象;
2. 接口是一种引用类型,在接口中可以声明( ),但不可以声明公有的域或私有的成员变量。
a) 方法、属性、索引器和事件; b) 方法、属性信息、属性;
c) 索引器和字段; d) 事件和字段;
3. 以下是一些C#中的枚举型的定义,其中错误的用法有( )
a) public enum var1{ Mike = 100, Nike = 102, Mike }
b) public enum var1{ Mike = 100, Nike, Jike }
c) public enum var1{ Mike=-1 , Nike, Jike }
d) public enum var1{ Mike , Nike , Jike }
4. 在对SQL Server 数据库操作时最好选用( )。
a) SQL Server .NET Framework 数据提供程序;
b) OLE DB .NET Framework 数据提供程序;
c) ODBC .NET Framework 数据提供程序;
d) oracle .NET Framework数据提供程序;
5. 下列选项中,( )是引用类型。
a) enum类型 b) struct类型
c) string类型 d) int类型
6. class Class1
{
public static int Count = 0;
static Class1()
{
Count++;
}
public Class1()
{
Count++;
}
}
运行:
Class1 o1 = new Class1();
Class1 o2 = new Class1();
请问,Class1.Count的值是多少?( )
a) 1 b) 2 c) 3 d) 4
7. 要创建多文档应用程序,需要将窗体的( )属性设为true。
a) DrawGrid; b) ShowInTaskbar;
c) Enabled; d) IsMdiContainer;
8. 如果设treeView1=new TreeView(),则treeView1.Nodes.Add("根节点")返回的是一个( )类型的值。
a) TreeNode; b) int;
c) string; d) TreeView;
问答题
1. 在下面的例子里
using System;
class A
{
public A()
{
PrintFields();
}
public virtual void PrintFields(){}
}
class B:A
{
int x=1;
int y;
public B()
{
y=-1;
}
public override void PrintFields()
{
Console.WriteLine("x={0},y={1}",x,y);
}
}
当使用new B()创建B的实例时,产生什么输出?
2. SQLSERVER服务器中,给定表 table1 中有两个字段 ID、LastUpdateDate,ID表示更新的事务号, LastUpdateDate表示更新时的服务器时间,请使用一句SQL语句获得最后更新的事务号。
3. 写一个列举某一目录下(包括其子目录)所有文件名(FileName)的函数(请使用递归算法)。
4. 一个长度为10000的字符串,通过随机从a-z中抽取10000个字符组成。请用c#语言编写主要程序来实现
5. 相同大小的两个数组A和B,编程实现逆序交换两个数组的各个元素的值(如A中的元素为1 2 3 4, B中的元素为5 6 7 8,交换后,A中的元素变为8 7 6 5, B中的元素变为:4 3 2 1),要求使用函数实现,数组使用参数方式传递近函数。