C#开发基础(习题卷30)
第1部分:单项选择题,共52题,每题只有一个正确答案,多选或少选均不得分。
1.[单选题]在C#中,DataGridView 的( )属性,用于将 DataSet 中的数据显示在控件上
A)DataSource
B)DataSet
C)DataBinding
D)DataBind
答案:A
解析:
2.[单选题]C# 中的集合被定义在()命名空间中。
A)System.Collections.Generic
B)System.IO
C)System.Collections
D)System.Reflection
答案:C
解析:
3.[单选题]Directory.CreateDirectory()的返回值类型为( )。
A)bool
B)string
C)DirectoryInfo
D)void
答案:C
解析:
4.[单选题]已知有一个名为Paste的菜单项,如果想使该菜单变灰(失效),则正确的语句是______。
A)Paste.Enabled=false;
B)Paste.Visable=false;
C)Paste.Checked=false;
D)Paste.Radio=false;
答案:A
解析:
5.[单选题]下面代码运行后,s 的值是(  )。
int s = 0;
for (int i = 1; i < 100;i++)
{
if (s > 10)
{
break;
}
if (i % 2 == 0)
{
s += i;
}
}
A)20
B)12
C)10
D)6
答案:B
解析:第一次:i=2时 i % 2 == 0为真  s=2+0=2;
第二次:i=4时 i % 2 == 0为真  s=2+4=6;
第三次:i=6时 i % 2 == 0为真  s=6+6=12;  这时s > 10,break生效,退出循环。
6.[单选题]下列选项中,关于嵌套类的描述正确的是( )。
A)嵌套类即定义在类内部的类
B)在嵌套类内可以声明静态成员
C)在作用域范围之外可以直接引用嵌套类
D)在类的外部可以直接调用嵌套类的成员
答案:A
解析:
7.[单选题]下列选项中,关于匿名类的描述错误的是( )。
A)匿名类没有类名
B)匿名类有类名
C)编译器会根据匿名类中属性的值来确定属性的类型并生成一个类
D)所有的匿名类均继承自System.Object类
答案:B
解析:
html5开发示例8.[单选题]设有说明
Int x=8;
则下列表达式中,值为2的是
A)X>8?x=0:x++
B)X/=x+x
C)X%=x-2
D)X+=2
答案:C
解析:
9.[单选题]假设条件为:class Person { public string Name{get;set;} public int Age{get;set;}},下列选项中,对person类初始化正确是( )
A)Person p=new Person();
B)Person p=new {Name="张三",Age=18};
C)Person p=new Person{Name="张三",Age=18};
D)Person p=new Person(){Name="张三",Age=18};
答案:D
解析:
10.[单选题]C#语言的标识符只能由字母、数字和下划线组成,且第一个字符______。
A)必须为字母
B)必须为下划线
C)必须为字母或下划线
D)可以是字母、数字或下划线中的一种
答案:C
解析:
11.[单选题]C#程序的()方法被成为程序的大门,应用程序从这里开始运行
A)Main()
B)Begin()
C)Start()
D)main()
答案:A
解析:Main是程序的第一个执行方法。
12.[单选题]在C#语言中,下列能够作为变量名的是。
A)if (与关键词相同)
B)3ab(数字不能打头)
C)a_3b
D)a-bc(不能用短横线)
答案:C
解析:
13.[单选题]分析一下C#片段中的属性,该属性是(  )属性。
private string name;
Public string Name{
get{return name;}
}
A)可读可写
B)只写
C)只读
D)静态
答案:C
解析:只有get,所以是只读。
14.[单选题]运行int a=20,b=5,c=10,d=3;
bool s,e=false;
则表达式(  s=a<C)&&(e=b-d>0)运算后,e的值是(  )
A)0
B)1
C)true
D)false
答案:D
解析:s=a<C就是flase  这里又是与,所以是false
15.[单选题]在C#中,ListView控件的显示视图由( )属性设置
A)ShowMenu
B)View
C)Details
D)List
答案:B
解析:
16.[单选题]在HTML5中,以下正确设置网页标题为“HTML5网页”的代码是( )
A)<head>HTML5网页</head>
B)<t>HTML5网页</t>
C)<tltle>HTML5网页</title>
D)<h>HTML5网页</h>
答案:C
解析:
17.[单选题]在C#中,下列代码的运行结果是(  )。
int a = 30 , b = 20;
b = a;
a = 10;
Console.WriteLine(a);
A)10
B)20
C)30
D)报错。
答案:A
解析:
18.[单选题]在SQL Server中,在删除表时,主表和从表的删除顺序为( )
A)先删除主表,再删除从表
B)先删除从表,再删除主表
C)先删除哪个表都可以
D)只有先删除表之间的约束,才能删除表
答案:D
解析:
19.[单选题]在CSS3中,在设置标签背景图像的同时设定元素的背景颜将会( )
A)不会载入图片
B)优先显示背景图片
C)只显示背景颜
D)啥都没有
答案:B
解析:
20.[单选题]下面所列选项中,不能正确定义并初始化二维数组a的是( )。
A)int[,] a=new int[2,3]{{1,2,3},{4,5,6}};
B)int[,] a=new int[,]{{1,2,3},{4,5,6}};
C)int[,] a=new int[2,3]{1,2,3,4,5,6};
D)int[,] a={{1,2,3},{4,5,6}};
答案:C
解析:
21.[单选题]假定int类型变量占用4个字节,若有定义:int[] x = new int[] {1,2,3,4,5,6};
则数组x在内存中所占字节数是。
A)4
B)12
C)24
D)48
答案:C
解析:
22.[单选题]类MyClass 中有下列方法定义:
public void testParams(params int[] arr){
Console.Write ("使用Params参数!");}
public void testParams(int x,int y){
Console.Write ("使用两个整型参数!");}
请问上述方法重载有无二义性?若没有,则下列语句的输出为_________.
MyClass x = new MyClass();
A)有语义二义性;
B)使用Params 参数!使用两个整型参数!使用Params 参数!
C)使用Params 参数!使用Params 参数!使用Params 参数!
D)使用Params 参数!使用两个整型参数!使用两个整型参数!
答案:B
解析:用params修饰符声明的参数是参数数组。如果形参表包含一个参数数组,则该参数数组必须位于该列表的最后而且它必须是一维数组类型。例如,类型  string[]  和  string[][]  可用作参数数组的类型,但是类型
string[,]  不能。不可能将  params  修饰符与  ref  和  out  修饰符组合起来使用。
在一个方法调用中,允许以下列两种方式之一来为参数数组指定对应的参数:
赋予参数数组的参数可以是一个表达式,它的类型可以隐式转换(第  6.1  节)为该参数数组的类型。在此情况下,参数数组的作用与值参数完全一样。
或者,此调用可以为参数数组指定零个或多个参数,其中每个参数都是一个表达式,它的类型可隐式转换(第  6.1节)为该参数数组的元素的类型。在此情况下,此调用创建一个长度对应于参数个数、类型与该参数数组的类型相同的一个数组实例,并用给定的参数值初始化该数组实例的元素,并将新创建的数组实例用作实参。
除了允许在调用中使用可变数量的参数,参数数组与同一类型的值参数(第  10.5.1.1  节)完全等效。
示例
using  System;
class  Test
{
static  void  F(params  int[]  args)  {
Console.Write("Array  contains  {0}  elements:",  args.Length);
foreach  (int  i  in  args)
Console.Write("  {0}",  i);
Console.WriteLine();
}
static  void  Main()  {
int[]  arr  =  {1,  2,  3};
F(arr); 该数组实例作为值参数传递,等价于 F(new  int[]  {10,  20,  30,  40});
F(10,  20,  30,  40);