1、C#程序习题一、填空: 1、操作符( 则表达式 xb?(ac?a:c):b 的结果为( 6 ) 。17、在 C#语言中,实现循环的主要语句有 while, do-while, for 和( foreach )语句。18、封装的对象之间进行通信的一种机制叫做( 消息传递 ) 。19、在 C#语言中,可以用来遍历数组元素的循环语句是( foreach ) 。20、 ( 多态 )是指同一个消息或操作作用于不同的对象,可以有不同的解释,产生不同的执行结果。21、Stack 类表示对象的先(出)后(进)集合。22、 ( 封装 )是用一个框架把数据和代码组合在一起,形成一个对象。23、声明为( priva
2、te )的一个类成员,只有定义这些成员的类的方法能够访问。24、 ( 构造函数 )提供了对对象进行初始化的方法,而且它在声明时没有任何返回值。25、在异常处理结构中,抛出的异常要用( catch )语句捕捉。26、在 C#中实参与形参有四种传递方式,它们分别是( 值参数 ) ( 引用参数 ) ( 输出参数 )和( 参数数组 ) 。27、数组是一种( 引用 )类型。28、类的数据成员可以分为静态字段和实例字段。 (静态字段)是和类相关联的, (实例字段)适合对象相关联的。29、在异常处理结构中,对异常处理的代码应放在( catch )块中。 30、在类的方法前加上关键字( virtual ) ,
3、则该方法被称为虚方法。31、Timer 控件的(Interval )属性,用来指定时钟空间触发时间的时间间隔,单位毫秒。32、使用关键字( abstract )声明抽象类。33、关键字( Readonly )表明对象或者变量在初始化后不可修改。34、在 windows 程序中,若想选中复选框,则应将该控件的(Checked)属性设置为 true。35、面向对象语言都应至少具有的三个特性是 封装、 ( 继承 )和多态。 36、C#虽然不支持多重继承,但提供了另一种类似的机制是( 接口 ) 。37、数据库表中的每一行称为一条( 记录 ) 。38、要关闭已打开的数据库连接,应使用连接对象的( clo
4、se )方法。39、关闭数据库的连接,应使用连接对象的(close)方法。 40、数值转换是指在整数类型、 ( 字符类型 )和字符类型之间的转换。41、类是引用类型,而结构是( 值类型 ) 。42、在 do-while 循环结构中,循环体至少要执行( 1 )次。43、 (不规则数组)是数组的数组,它内部每个数组的长度可以不同,就像一个锯齿形状。44、一个 Web 页面的扩展名为( .aspx ) 。45、Web 程序中的 GridView 控件和 Windows 程序的(DataGrid/DataGridView)控件类似。46、SQL 语句中的选择语句,使用的关键字是( SELECT ) 。
5、 47、C#语言源代码文件的后缀名是( .cs ) 。48、在循环结构中,continue 语句的作用是(结束本次循环,继续下一次循环) 。49、集合类是由命名空间( System.Collections )提供。50、在 C#中,可以通过( throw )语句无条件抛出异常。51、C#通用类型系统 CTS 分为( 值类型 )和(引用类型) 。52、C#通过(装箱 )和(拆箱)机制,可以实现值类型和引用类型之间的转换。53、 (ListBox1.Items.Count)属性用于获取 ListBox1 控件中项的数目。54、ComboBox 控件的 SelectedIndex 属性返回对应于组合
6、框中选定项的索引整数值,其中,第 1 项为(0) ,未选中为(-1) 。55、属性窗口的属性可以按(分类)顺序和按字母顺序排列。56、当进入 VS 集成环境,如果没有显示“工具箱”窗口,应选择(视图)菜单的“工具箱”选项,以显示工具箱窗口。57、每个枚举成员均具有相关联的常量值,默认时,第一个枚举成员的关联值为(0) 。58、结构的默认值是通过将所有值类型字段设置为它们的默认值,并将所有的引用类型字段设置为(null) 。59、所有的枚举默认都继承于(System.Enum) 。60、类是存储在(堆)上的引用类型,而结构是存储在(堆栈)上的值类型。61、当在程序中执行到(continue)语句
7、时,将结束所在循环语句中循环体的一次执行。62、在 switch 语句中,每个语句标号所含关键字 case 后面的表达式必须是(常量表达式) 。63、在 while 循环语句中,一定要有修改循环条件的语句,否则,可能造成(死循环)64、C#数组元素的下标从(0 )开始65、若要在文本框中输入密码,常指定(PasswrodChar)属性。66、c#支持的循环有(for)、(while) 、(do while)和(foreach) 循环。67、一个类不可以多重继承几个父类但是可以多重继承(接口) 。68、Console.WriteLine(“RP”); 和 Console.Write(“RP”);
8、的区别是(第一个输出 RP 后换行,第二个不换) 。69、c#中 bool 类型只有两个值分别是_(true)和(false)。70、 (多态)是指两个或多个属性不同类的对象,对同一个消息做出不同响应的能力。71、在 while循环语句中,一定要有修改循环条件的语句,否则,可能造成( 死循环 )。72、传入某个属性的 SET方法的隐含参数的名称是(value)73、C#数组元素的下标从 (0)开始。74、对于方法,参数传递分为值传递和 (引用传递)两种。75、委托声明的关键字是(delegate) 。76、在实例化类对象时,系统自动调用该类的( 构造函数 )进行初始化。77、要使 Lable
9、控件显示给定的文字 “您好” ,应在设计状态下设置它的( Text )属性值78、在 C#程序中,程序的执行总是从( Main )方法开始的79、在 C#中,进行注释有两种方法:使用 “/”和使用“/* */“符号对,其中( / )只能进行单行注释。80、要在控制台程序运行时输入信息,可使用 Console 类的( ReadLine )方法。81、在循环执行过程中,希望当某个条件满足时退出循环,使用( break )语句82、数组定义与赋值语句如下:int a=1,2,3,4,5;则 a2的值是( 3 )83、下列程序段执行后,a4 的值为( 4 ) 。 int a=1,2,3,4,5;a4=
10、aa2; 84、要定义一个 3 行 4 列的单精度型二维数组 f,使用的定义语句为(float, f=new float3,4; )85、定义方法时使用的参数是( 形参 ) ,调用方法时使用的参数是( 实参 ) 。86、数据类型说明符用来说明方法返回值的类型,如果没有返回值,则其类型说明符应为( void ) 。87、C#中的字符串有两类,规则字符串和逐字字符串,定义逐字字符串时,应在其前面加上( )号。88、在类的成员声明时,若使用了( protected)修饰符则该成员只能在该类或其派生类中使用。89、类的静态成员属于( 类 )所有,非静态成员属于类的实例所有。90、要给属性对应的数据成员
11、赋值,通常要使用 set 访问器,set 访问器始终使用( value )来设置属性的值。91、在声明类时,在类名前(abstract)修饰符,则声明的类只能作为其他类的基类,不能被实例化。92、 ( try )块封装了可能引发异常的代码。93、Exception 类中有两个重要的属性:( Message )属性包含对异常原因的描述信息94、get 访问器必须用(return)语句来返回。95、C#中的属性通过(get)和(set) 访问器来对属性的值进行读和写。96、已知有类 MyOwnClass,则其默认的构造函数为(MyOwnClass) 。97、元素类型为 double 的 2 行 5
12、 列的二维数组共占用 (80) 字节的存储空间98、当在程序中执行到 (break)语句时,将结束本层循环类语句或 switch 语句的执行。99、元素类型为 int 的 10 个元素的数组共占用(40)个字节的存储空间。100、要使 Lable 控件显示给定的文字 “您好” ,应在设计状态下设置它的( Text )属性值。101、通过( interface )关键字定义一个接口,通过( : )关键字实现接口。102、设 x 为 int 型变量,请写出描述“x 是奇数”的 C#语言表达式( x%2=1 ) 。103、C#中的字符串有两类,规则字符串和逐字字符串,定义逐字字符串时,应在其前面加上
13、( )号。104、在 C#中,可以标识不同的对象的属性是( Name) 。105、在 C#中,用来创建主菜单的对象是( MenuStrip) 。106、浮点类型包括(float) 、 (double)和(decimal) 。107、枚举类型使用(enum)关键字声明。108、在 switch 语句中, (default )语句是可选的,且若存在,只能有一个。109、break 语句只能用于循环语句或(switch)语句中。110、如果 int x 的初始值为 5,则执行表达式 x-=3 之后,x 的值为( 2 ) 。111、 (*=)运算符将左右操作数相乘的结果赋值给左操作数。112、存储整数
14、型变量应该使用关键字(int)来声明。113、在带有( n=65”的值为(false) 。223、计算表达式“10=10i=i-3 ) ”循环次数为(7 )次。226、对于 do-while 循环结构,当 while 语句中的条件表达式的值为( false)时结束循环。227、跳转语句中的(goto)语句可以将程序控制直接转移到标号指定的语句。228、C#语言中的结构类型采用( struct)来进行声明。它是一系列相关的但类型不一定相同的变量组织在一起构成的。229、数组内的值都具有相同的(类型) 。230、选定或取消选定 RadioButton 时,都会触发(CheckedChanged)事
15、件。231、派生类的对象对它的基类成员中的( 私有或 private )成员是不可访问的。232、C#程序中,可使用 try.catch 机制来处理程序出现的( 运行 )错误。233、点击“工具箱”窗口中的“下箭头”按钮后,可以选择的窗口停放样式有(停靠) 、(浮动)和(隐藏) 。234、有一个字符串的定义为 string s = “hello world!”; 在此字符串中,字符 w 的索引是(6) 。235、Windows 窗体应用程序的编程模型主要由(窗体) 、 (控件)和(事件) 。236、在方法定义中,virtual 含义是(被 virtual 修饰的方法可以被子类重写) 。237、
16、在类的定义中,类的( 方法 )描述了该类的对象的行为特征。238、如果未显式赋值,则将整型值( 0 )赋给枚举中的第一个元素239、用来定义事件的关键字是(event ) 。240、在.NET 中,一些数据类型为引用类型,当引用类型的值为(null )时,表明没有引用任何对象。241、在 C#中,用来表示回车的转义字符是( n) 。242、在 C#中,布尔类型的关键字是( bool ) 。243、在 C#中 byte 类型所占用的内存空间是(2)个字节。244、对类不指定访问修饰符,则类的默认访问修饰符为_internal_,但是类成员的默认访问级别为_private_245、C#中的三元运算
17、符是_ ?_:_。246、使用 Message.Show( )方法可以显示消息框,消息框的返回值是一个 DialogResult 类型。247、当整数 a 赋值给一个 object 对象时,整数 a 将会被(装箱) ,248、C#中,使用(属性)的功能来读写类中的字段,从而便于为这些字段提供保护。249、所有的 Windows 窗体控件都是从 System.Windows.Forms. Control_类继承而来,它公开的成员主要包含:_属性_、_事件_、_方法_。250、在 windows 程序中,若想选中复选框,则应将该控件的_Checked_属性设置为 true。251、实现密码框功能的
18、方法是将 TextBox 控件的_PasswordChar_ _属性赋予屏蔽字符252、_Count_ _属性用于获取 ListBox 中项的数目。253、当进入 Visual Studio 集成环境,如果没有显示“工具箱”窗口,应选择“(_视图_)_”菜单项的“工具箱”选项,以显示“工具箱”窗口。254、属性窗口的属性可以按(分类 )顺序和按字母顺序排列。255、类声明后,可以创建类的实例,创建类的实例要使用(new)关键字,类的实例相当于一个变量,创建类的实例的格式如:(类名 对象名= new 对象名() )256、C#的类定义中可以包含两种成员:静态成员和非静态成员。使用(static)
19、关键字修饰的是静态成员,反之为非静态成员。257、 让控件不可用的属性是(enabled) 。258、让控件不可见的属性是(visible) 。259、声明一个 10 行 20 列的二维整形数组的语句为:(int, a=new int10,20 ) 。260、构造函数在(创建对象)时被调用。261、 Random.Next 方法用来产生随机数。262、 索引函数 能够以数组的方式来控制对多个变量的读写访问。263、被调用的方法中的 return 语句可以用来向调用方法传递表达式的值。264、在 C中,下列 for 循环的运行结果是(12345) 。for(int i=0;i0;i-)Conso
20、le.Write(i-);266、在 C中,下列代码的运行结果是( 246) 。int price = new int1,2,3,4,5,6;foreach(int p in price)if(p%2=0)Console.Write(p);267、一般将类的构造方法声明为 public 或公有 访问权限。如果声明为 private,就不能创建该类的对象。268、C#数组类型是一种引用类型,所有的数组都是从 System 命名空间的 object 类继承而来的引用对象。269、C#数组元素的下标从 0 开始。270、在 while 循环语句中,一定要有修改循环条件的语句,否则,可能造成 死循环
21、.。271、在 switch 语句中,每个语句标号所含关键字 case 后面的表达式必须是 常量表达式 。272、确定两个类继承关系的符号是 : 。273、不可继承的类,使用 sealed 关键字定义。274、不指定基础类型的枚举的直接量为 int 类型的值 。275、专门产生伪随机数的类是 Random 类。276、专用于数组和集合的循环语句是 foreach 。277、方法重载是指类的两个或两个以上的方法_同名_,但形式参数列表不同的情况。278、下面程序段执行后,sum 的值为 11 int i,sum=0;for(i=0,sum=0;i=10;i+,sum+);279、下面循环语句的执
22、行次数为 6 次 。for(int i=0;i=10;i+=2)280、使用 MessageBox 显示消息时,第(2)个参数为标题参数 。 281、SubString()函数的功能是 (获取子字符串) 。282、表达式 2+5/10*10 的值为( 2) 。283、C#程序的入口是(Main )方法。284、类是一种数据结构,它使用 class 关键字声明。285、类声明后,可以创建类的实例,创建类的实例要使用 new 关键字。类的实例相当于一个变量。创建类的实例的格式如:类名 对象名= new 对象名() 。286、C#的类定义中可以包含两种成员:静态成员和非静态成员。使用了 static
23、 关键字修饰的就是静态成员,反之就是非静态成员。287、创建新对象时将调用类的 构造函数 。它主要用来为对象分配存储空间,完成初始化操作。288、抽象类使用关键字 obstract 来声明。289、派生类构造函数的执行顺序是从最上面的(基类)开始,直到最后一个(派生类)结束。290、在 C#中调用基类的方法使用关键字( base) 。291、引入命名空间的关键字是(using) 。292、类的定义使用关键字(class) ,定义结构使用关键字(struct) 。293、在 catch 语句中列出异常类型时 FormatException 异常应列在 Exception 异常的( 前面 ) 。2
24、94、Exception 类中有两个重要的属性:( Message )属性包含对异常原因的描述信息。295、在声明类时,在类名前(abstract)修饰符,则声明的类只能作为其他类的基类,不能被实例化。296、在类的成员声明时,若使用了( protected )修饰符则该成员只能在该类或其派生类中使用。297、在方法的参数列表中定义的参数称为(形参) 。298、类的方法声明中,若没有显式指定方法的访问修饰符,则默认为(private) 。299、静态属性只能通过(类)调用。300、数据类型转换分为(隐式转换)和(显式转换)两种。二、选择: 1、装箱是把值类型转换到( b )类型。 a)数组 b
25、)引用 c)char d)string2、静态构造函数只能对( a )数据成员进行初始化。a) 静态 b) 动态 c)实例 d) 静态和实例3、关于如下程序结构的描述中,哪一项是正确的?( b )for ( ; ; ) 循环体; a) 不执行循环体 b) 一直执行循环体 ,即死循环c) 执行循环体一次 d) 程序不符合语法要求4、下列哪个类型的对象是 ADO.NET 在非连接模式下处理数据内容的主要对象?( d )a) Command b) Connection c) DataAdapter d) DataSet5、下列哪一个不是类成员的成员的是( d ). a)属性 b) 数组 c) 索引器
26、 d)while 循环结构6、枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类型,如果类型省略,则定义为( a ) 。a) int b) sbyte c) uint d) ulong7、下列关于数组访问的描述中,哪些选项是正确的? ( d )。 a) 数组元素索引是从 0 开始的 b) 对数组元素的所有访问都要进行边界检查c)如果使用的索引小于 0,或大于数组的大小,编译器将抛出一个IndexOutOfRangeException 异常; d) 数组元素的访问是从 1 开始,到 Length 结束;8、下列结构图对应于哪种结构(A 是程序段,P 是条件)?( c ) 。a) w
27、hile 循环结构 b) dowhile 循环结构c) ifelse 选择结构 d) switchcase选择结构9、C#数组主要有三种形式,它们是( c ) 。a) 一维数组 、二维数组、三维数组 b) 整型数组、浮点型数组、字符型数组c) 一维数组、多维数组、不规则数组 d) 一维数组、二维数组、多维数组10、下列标识符命名正确的是( d ) 。a) X.25 b)4foots c)val(7) d)_Years11、面向对象编程中的“继承”的概念是指( b )a) 对象之间通过消息进行交互 b)派生自同一个基类的不同类的对象具有一些共同特征c)对象的内部细节被隐藏 d) 派生类对象可以不受限制地访问所有的基类对象12、下列语句在控制台上的输出是什么?( b )if(true)System.Console.WriteLine(“FirstMessage”);System.Console.WriteLine(“SecondMessage”);