c####

章,题目,选项A,选项B,选项C,选项D,正确选项
1,"( )是独立于CPU的指令集,它可以被高效地转换为特定于某种CPU的代码?",CLR(公共语言运行库),CLS(公共语言规范),MSIL(微软中间语言),CTS(通用类型系统),3
1,NET框架是.NET战略的基础,是一种新的便捷的开发平台,它具有两个主要的组件,分别是( )和类库,公共语言运行库,Web服务,命名空间,Main()函数,1
1,C#程序设计语言属于什么类型的编程语言:,机器语言,高级语言,汇编语言,自然语言,2
1,Visual Studio.Net开发平台是( )公司提供的.NET应用程序集成开发工具。,Borland,Microsoft,Intel,IBM,2
1,.NET战略不包括:,.NET开发平台,.NET服务器,.NET基础服务和.NET用户体验,.NET客户端,4
1,下面关于visual c#最新版的说法中,不正确的是:,它是C++的增强,它不是面向对象的,并行计算能力增强,支持云应用的开发和快速部署,2
1,下面说法错误的是:,.NET平台又称为.NET框架,是.NET核心组成部分,提供了一个多语言组件开发和执行环境。,.NET平台可实现众多种类语言间的无缝集成,在.NET平台下,编译器向CLR提供的编译结果是机器代码,而不是中间语言,公共语言运行库(CLR)是.NET系统框架中核心的部分,负责执行代码、管理内存、提供安全性等核心功能。,3

章,题目,选项A,选项B,选项C,选项D,正确选项
2,假设变量x的值为25,要输出x的值,下列正确的语句是:,System.Console.writeline(“x”),System.Console.WriteLine(“x”),“System.Console.WriteLine(“x={0}”, x)”,System.Console.WriteLine(“x={x}”),3
2,关于C#程序的书写,下列不正确的说法是:,区分大小写,一行可以写多条语句,一条语句可写成多行,一个类中只能有一个Main()方法,因此多个类中可以有多个Main()方法,4
2,在C#语言中,下列能够作为变量名的是:,if,3ab,a_3b,a-bc,3
2,在C#语言中,下面的运算符中,优先级最高的是:,++,/=,>>,%,1
2,能正确表示逻辑关系“a >= 10 或a <= 0”的C#语言表达式是:,a >= 10 or a <= 0,a >= 10 | a <= 0,a >= 10 && a <= 0,a >= 10 || a <= 0,4
2,“以下程序的输出结果是( )。 using System; class Example1 { public static void Main() { int a=5, b=4, c=6, d; Console.WriteLine(“{0}”, d = a > b ? (a > c ? a : c) : b); } }”,5,4,6,不确定,3
2,C#中的类型float 对应.NET 类库中的:,System.Single,System.Double,System.Int32,System.Int64,1
2,“假定int类型变量占用四个字节,若有定义: int [] x = new int [10] {0, 2, 4, 4, 5, 6, 7, 8, 9, 10}; 则数组x在内存中所占字节数是:”,6,20,40,80,3
2,“有定义语句: int [,] a = new int[5,6]; 则下列正确的数组元素的引用是:”,“a(3,4)”,a(3)(4),a[3][4],“a[3,4]”,4
2,“下列程序的执行结果是( )。 using System; class Example1 { enum team {my, your = 4, his, her = his + 10}; public static void Main() { Console.WriteLine(“{0} {1} {2} {3}”, (int)team.my, (int)team.your, (int)team.his, (int)team.her); } }”,0 1 2 3,0 4 0 10,0 4 5 15,1 4 5 15,3
2,以下对枚举的定义,正确的是:,“enum a = {one, two, three}”,“enum a {a1, a2, a3};”,“enum a = {‘1’, ‘2’, ‘3’};”,“enum a {“one”, ”two”, ”three”};”,2
2,枚举型常量的值不可以是( )类型,int,long,ushort,double,4
2,下面对Read()和ReadLine()方法的描述,哪个是不正确的:,Read()方法一次只能从输入流中读取一个字符,使用Read()方法读取的字符不包含回车和换行符,使用ReadLine()方法读取的字符不包含回车和换行符,只有当用户按下回车键时,Read( )和ReadLine()方法才会返回,2
2,下面对Write()和WriteLine()方法的描述,哪个是不正确的:,WriteLine()方法在输出字符串的后面添加换行符,使用Write()输出字符串时,光标将会位于字符串的后面,使用Write()和WriteLine()方法输出数值变量时,必须要先把数值变量转换成字符串,使用不带参数的WriteLine()方法时,将不会产生任何输出,3
2,以下标识符中,正确的是:,_nName,typeof,6b,x5#,1
2,“下面是几条定义初始化一维数组的语句, 指出其中正确的是:”,“int arr1 [] = {6, 5, 1, 2, 3};”,int [] arr1 = new int [];,“int [] arr1 = new int [] {6, 5, 1, 2, 3};”,“int [] arr1; arr1 = {6, 5, 1, 2, 3};”,3
2,“下面是几条动态初始化一维数组的语句, 指出其中正确的是:”,int [] arr2 = new int [];,int [] arr2 = new int [4];,“int [] arr2 = new int [i] {6, 5, 1, 2, 3};”,“int [] arr2 = new int [4] {6, 5, 1, 2, 3};”,2
2,“下面是几条定义并初始化而维数组的语句,指出其中正确的是:”,“int arr3 [][] = new int [4,5];”,“int [][] arr3 = new int [4,5];”,“int arr3 [,] = new int [4,5]”,“int [,] arr3 = new int [4,5];”,4
2,“在 C#中,下列哪条语句能创建一个具有 3 个初始值为”""“的元素的字符串数组:”,string StrList3;,“string[3] StrList = {”""","""",""""};",“string[] StrList = {”""","""",""""};",string[] StrList = new string[3];,3
2,“下列语句创建了多少个 string 对象? string[,] strArray = new string[3][4];”,0,3,4,12,4
2,C#中每个 int 类型的变量占用( )个字节的内存?,1,2,4,8,3
2,“在 C#中,表示一个字符串的变量应使用以下哪条语句定义?”,CString str;,string str;,Dim str as string,char * str;,2
2,“在 C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句?”,decimal theMoney;,int theMoney;,string theMoney;,Dim theMoney as double,1
2,“C#中,新建一字符串变量 str,并将字符串”“Tom’s Living Room”“保存到串中,则应该使用 下列哪条语句?”,string str = “Tom’s Living Room”;,string str = “Tom’s Living Room”;,string str(“Tom’s Living Room”);,string str(“Tom"s Living Room”);,1
2,“下列语句的输出是( )? double MyDouble = 123456789; Console.WriteLine(”"{0:E}"",MyDouble);","$123,456,789.00 “,1.23E+08,“123,456,789.00”,123456789,2
2,“为了将字符串str = “123,456”转换成整数123456,应该使用以下哪条语句?”,int Num = int.Parse(str);,int Num = str.Parse(int);,int Num = (int)str;,“int Num = int.Parse(str,System.Globalization.NumberStyles.AllowThousands);”,4
2,枚举类型是一组命名的常量集合,所有整形都可以作为枚举类型的基本类型,如果类型省略,则定义为:,int,sbyte,uint,ulong,1
2,下列关于数组访问的描述中,哪个选项是不正确的?,数组元素索引是从0开始的,对数组元素的所有访问都要进行边界检查,如果使用的索引小于0,或大于数组的大小,编译器将抛出一个IndexOutOfRangeException异常,数组元素的访问是从1开始,到Length结束,4
2,C#数组主要有三种形式,它们是:,一维数组 、二维数组、三维数组,整型数组、浮点型数组、字符型数组,一维数组、多维数组、不规则数组,一维数组、二维数组、多维数组,3
2,下列标识符命名正确的是:,X.25,4foots,val(7),_Years,4
2,“下列类型中, 哪些不属于引用类型?”,String,int,Class,Delegate,2
2,“数组pins的定义如下:int[] pins=new int[4]{9,2,3,1}; 则pins[1]=( )”,1,2,3,9,2
2,C#中导入某一命名空间的关键字是:,using,use,import,include,1
2,“以下程序的输出结果是( )。 enum Color { Red, Green = 2, Blue } static void Main(string[] args) { Color c = 0; Color c1 = (Color )2; Console.WriteLine(””{0},{1}"", c,c1 ); Console .Read (); }",“Green,Red”,“Red,Green”,“Red,Blue”,“Green,Blue”,2
2,下列标识符命名正确的是:,X_25,4foots,&Years,val(7),1
2,“有说明语句double[,] tab=new double[2,3];那么下面叙述正确的是:”,tab是一个数组维数不确定的数组,使用时可以任意调整,tab是一个有两个元素的一维数组,它的元素初始值分别是2,3,tab是一个二维数组,它的元素个数一共有6个,tab是一个不规则数组,数组元素的个数可以变化,3
2,如果左操作数大于右操作数,(   )运算符返回false,=,<,<=,以上都是,4
2,在C#中无需编写任何代码就能将int型数值转换为double型数值,称为:,显式转换,隐式转换,数据类型转换,变换,2
2,下面代码的输出结果是( )。 int x = 5; int y = x++; Console.WriteLine(y); y = ++x; Console.WriteLine(y);,5 6,6 7,6 6,5 7,4
2,当你需要使用一种数据类型表达同一类事物的不同状态,比如:男人、女人、小孩、老人或者春夏秋冬时,C#中最可靠和直观的解决方案是什么?,使用struct结构,使用enum枚举,使用int类型,用不同的数值{0,1,2……}表示,C#中无法通过一种数据类型实现同一事务的不同状态,2
2,下列选项中,不属于值类型的是:,struct,Int32,Int,string,4
2,声明double a; int b;下列哪个选项中的表达式能够正确的进行类型转换?,a=(decimal)b;,a=b;,a=(int)b ;,b=a;,2
2,在C# 中,可以避免使用枚举变量来避免不合理的赋值,一下枚举定义中正确的是:,“public enum Sex{ male,femal }”,“public enum Sex{ male,femal; }”,“public Sex enum { male,femal; }”,“public Sex enum { male,femal }”,1
2,请仔细阅读有如下C#代码: int A = 3; int B = 4 Console.WriteLine(A + B); 因为第二行代码少写了一个分号,程序运行时将:,产生语法错误,产生语义错误,中断,正常运行,1
2,int a = 10; string b = “10”; Console.WriteLine(a+b); 运行上面的代码将:,输出:20,输出:1010,输出:10+10,编译报错,提示数据类型不匹配,2
2,数据类型转换有隐式转换和( )转换。,强制,自制,显式,非隐式,3
2,下列语句在控制台上的输出是什么? string msg = @”Hello\nWorld!”; System.Console.WriteLine(msg);,Hello\nWorld!,@”Hello\nWorld!”,Hello World!,Hello World!,1
2,下列关于.net中枚举型的描述正确的是:,枚举型是引用类型,枚举型是值类型,它是一组称为枚举数列表的命名常量组成的独特类型,指定分配给每个枚举数的存储大小的基础类型是可以为int,也可以为char类型,还可以为long类型,枚举型的默认基础类型为int,第一个枚举数的值必须为0,后面每个枚举型的值依次递增1,2
2,以下( )是用于声明枚举类型的关键字,static,struct,enum,delegate,3
2,“在C#中,下列代码的运行结果是( )。 int []age1 = new int[]{10,20}; int []age2 = age1; age2[1] = 30; Console.WriteLine(age1[1]);”,0,10,20,30,4
2,C#的数据类型有:,值类型和调用类型,值类型和引用类型,引用类型和关系类型,关系类型和调用类型,2
2,C#的数据类型有:,int,bool,double,array,4
2,声明方法时,如果有参数,则必须写在方法名后面的小括号内,并且必须指明它的类型和名称,若有多个参数,需要用( )隔开。,逗号,分号,冒号,不能定义多个参数,1
2,小数类型(decimal)和浮点类型都可以表示小数,正确说法:,两者没有任何区别,小数类型比浮点类型取值范围大,小数类型比浮点类型精度高,小数类型比浮点类型精度低,3
2,“为了将字符串 str=“123,456”转换成整数 123456,应该使用以下哪条语句?”,int Num = int.Parse(str);,int Num = str.Parse(int);,int Num = (int)str;,“int Num = int.Parse(str,Globalization.NumberStyles.AllowThousands);”,4
2,下面关于C#中值类型和引用类型的描述正确的是:,结构属于引用类型,字符串属于值类型,所有内置的数据类型都是值类型,所有用户定义的数据类型都是引用类型,值类型变量直接存放真正的数据,引用类型变量存放的是指向真正数据的内存地址,4
2,下列参数类型中( )是 C#中不允许使用的。,值参数,引用参数,输出参数,指针参数,4
2,以下选项中,哪个选项中的变量命名是合法的:,**z,_ester,tc@caac,www.eroman.com,2
2,能作为C#程序的基本单位是:,字符,语句,函数,源程序文件,2
2,变量从字符串类型转换为整型可以使用的类型转换方法是:,Str(),Cchar,CStr(),int32.Parse(),4
2,字符串连接运算符包括&和:,+,-,*,/,1
2,C#源程序文件的拓展名是:,vb,c,cp,cs,4
2,有两个double类型的变量x和y,分别取值为8.8和4.4,则表达式(int)x-y/y的值是( ),7,7.1,7.5,8,1
2,运行int a=20,b=5,c=10,d=3;bool s,e=false; 则表达式(s=a<c)&&(e=b-d>0)运算后,e的值是:,0,1,TRUE,FALSE,4
2,假定一个10行20列的二维整型数组,下列哪个定义语句是正确的:,“int[]arr = new int[10,20]”,“int[]arr = int new[10,20]”,“int[,]arr = new int[10,20]”,“int[,]arr = new int[20;10]”,3
2,C#语言中,值类型包括:基本值类型、结构类型和:,小数类型,整数类型,类类型,枚举类型,4
2,在C#程序中,使用( )关键字来创建数组,new,array,static,this,1
2,Console是C#语言中的控制台类,它负责向控制台输出不同格式的字符串,在格式字符串中,可以使用( )来实现水平制表输出。,\r,\t,\n,\d,2
2,C#程序的( )方法被成为程序的大门,应用程序从这里开始运行,Main(),Begin(),Start(),main(),1
2,在以下C#类中,( )是控制台类,利用它我们可以方便的进行控制台的输入输出。,Control,Console,Cancel,Write,2
2,C#语言中的类Console包含两个输入方法:Write()和WriteLine()。它们之间的唯一区别是:,WriteLine()方法输出后换行,Write()方法输出后不换行,WriteLine()方法可以格式化输出,Write()方法不可以,Write()方法输出后换行,WriteLine()方法输出后不换行,Write()方法可以格式化输出,WriteLine()方法不可以,1
2,在下列C#代码中,程序的命名空间是( ) using System; namespace Test{ class Program{ static void Main(string[]args){ Console.Write(“Hello World!”); } } },Test,Main,namespace,Program,1
2,“在c#中,下列代码的运行结果是( ) class Test{ static Void Main(string [] args){ int a=10,b=20; int c=a>b?a++:–b; Console.WriteLine(c); } }”,10,11,19,20,3
2,设int型变量x的值为9,那么表达式x-- + x-- + x–的值为:,27,24,21,18,2
2,“以下语句不可以在屏幕上输出Hello,World语句是:”,“Console.WriteLine(”“Hello”"+"",World"");",“Console.Write(”“Hello,{0}”","“World”");",“Console.WriteLine(”"{0},{1}"","“Hello,World”");",“Console.Write(”“Hello,World”");",3
2,在C#语言中,运算符"="和"=="的功能分别是:,关系运算和赋值运算,赋值运算和关系运算,都是关系运算,都是赋值运算,2
2,C#中每个char类型变量占用( )字节内存,1,2,3,4,2
2,“下列代码的运行结果是: int a=10,b=20; Console.WriteLine(a/b);”,0.5,0,2,2,2
2,在C#编制的财务程序中,需要创建一个存储流动资金金额的临时变量,则应使用下列哪条语句:,decimal EMoney;,int EMoney;,string EMoney;,Dim EMoney as double;,1
2,“以下的C#代码: static void Main(string[] args) { Console.WriteLine(”“运行结果: {0}”",Console.ReadLine()); } 代码运行结果为:",在控制台窗口显示“运行结果:”,在控制台窗口显示“运行结果:{0}”,在控制台窗口显示“运行结果:,Console.ReadLine”,如果用户在控制台输入“ A”,那么程序将在控制台显示“运行结果:A”,4
2,在C#中,引用命名空间System的正确语句是:,using System;,# import ;,uses System;,# include ;,1

章,题目,选项A,选项B,选项C,选项D,正确选项
3,下列选项中,( )是引用类型。,enum类型,struct类型,string类型,int类型,3
3,已知如下程序,下列选项放在空白处不能输出*的是:void main() { int x=6; do { Console.Write(""); x–; --x; } while(_____);-----空白处 },x>=1,x>=2,x>0,x>3,4
3,以下数据类型中不可以使用算术运算运算的是:,sbyte,bool,char,decimal,2
3,以下数据类型不能表示负数范围的是:,sbyte,decimal,double,uint,4
3,两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是: int x; x=int.Parse(Console.ReadLine()); if(x++>5) Console.WriteLine(x); else Console.WriteLine(x - -);,7和5,6和3,7和4,6和4,3
3,为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( )组成配对关系。,缩排位置相同的if,在其之前未配对的if,在其之前未配对的最近的if,同一行上的if,3
3,关于循环语句下列错误的是:,for语句while语句与do while语句可以相互替换,while(5){Console.WriteLine(“Hello!”);}将无限输出字符串Hello,for(int i=5;i<13;i++){} 这个语句将运行8次,while语句中的条件必须是布尔类型的结果,1
3,以下数组声明中,不正确的有:,int[] a ;,int a[]=new int[2];,“int [] a={1,3}”,“int [] a=int []{1,3}”,2
3,“下列语句执行后y的值为: int x=0,y=0; while(x<10) { y+=(x+=2); }”,10,20,30,55,3
3,在c#的条件判断语句switch case结构中,( )子句用于指定在找不到匹配项时执行的动作,continue,goto,else,default,4
3,“在C#中,下列代码的运行结果是( ) int a=21,b=22,c=23; if(a<b) Console.WriteLine(b+”",""+c); else Console.WriteLine(a+b+c);",“22,23”,45,23,66,1
3,关于C#中的switch case 语句,以下说法正确的是:,switch判断的表达式可以是整型或者字符型,但不能是字符串型,在该语句中最多不能超过5个case子句,在该语句中只能有一个default子句,在该句中只能有一个break语句,3
3,以下的C#程序代码,程序运行时在控制台打印输出值为( ) int count=3; while(count>1) { Console.Write(- -count); },32,321,21,2,3
3,“下面程序运行的结果是: string[] strings={”“abc”","“123"”,"“xyz”"}; foreach(string info in strings) { Console.Write(info); }",abc,abc123,abc123xyz,abcxyz,3
3,“在C#中,下列代码的运行结果是( ) int[]age=new int[]{16,18,20,14,22}; foreach(int i in age) { if(i>18) continue; Console.Write(i.ToString()+” ”); }”,16 18 20 14 22,16 18 14 22,16 18 14,13 18,3
3,下面程序的运行结果: for(int i=1;i<=3;i++) { switch(i) { case 1: Console.Write(i.ToString()); case 2: Console.Write((i * 2).ToString()); case 3: Console.Write((i
3).ToString()); } },有编译错误,提示case标签不能贯穿到另一个标签,不能运行,输出 149,输出 123246369,没有输出,1
3,在下面循环语句中循环体执行的次数为( )。 for(int i=0; i<n; i++) if(i>n/2) break;,n/2,n/2+1,n/2-1,n-1,2
3,以下程序的运行结果是: static void Main(string[] args) { string result=""; for(int i=0;str[i]>=‘a’&&str[i]<=‘z’;i+=3) { result =str[i]+result; Console.WriteLine(result); } },10fe658b,feb,10658,b,4
3,先判断条件的当循环语句是:,do…while(…),while(…){…},while…do{…},do …loop,2
3,请问经过表达式a = 3 + 1 >5 ? 0 : 1的运算,变量a的最终值是什么?,4,0,1,3,3
3,在C#中,将路径名"C:\Documents"存入字符串变量path中的正确语句是:,path=“C:\Documents\”;,path=“C://Documents//”;,path=“C:\Documents”;,path=“C:/Documents/”;,1
3,下列说法中不正确的是:,C#中以“;”作为一条语句的结束,C#中注释是不参与编译的,C#有三种不同的注释类型,swith语言中case标签结束可是有跳转语句,也可以没有。,4
3,下列关于switch语句的表述中哪个是正确的:,switch语句的控制表达式可以是任何数据类型,switch语句可以出现default标签,也可以不出现default标签,switch中可以有两个或两个以上的case标签的常量与控制表达式的值相同,switch语句中case标签结束可以有跳转语句,也可以没有。,2
3,“在C#中,下列代码运行后,变量Max最终的值是: int a = 5,b = 10,c = 15,Max = 0; Max = a > b ? a : b; Max = c < Max ? c : Max;”,0,5,10,15,3
3,结构化的程序设计的 3 种基本结构是:,“顺序结构,If结构,for 结构”,“if 结构,if……else结构 else if结构”,“while结构,do….while结构,foreach结构”,“顺序结构,分支结构,循环结构”,4
3,if语句后面的表达式应该是:,逻辑表达式,条件表达式,算术表达式,任意表达式,1
3,以下关于 for 循环的说法不正确的是:,for 循环只能用于循环次数已经确定的情况,“for 循环是先判定表达式,后执行循环体语句”,“for 循环中,可以用 break语句跳出循环体”,“for 循环体语句中,可以包含多条语句,但要用花括号括起来”,1
3,当整数a赋值给一个object对象时,整数a将会被:,拆箱,丢失,装箱,出错,3
3,static void Main(){ int[] b = new int[10]; for(int i=1;i<=10;i++) _________ (1) //填写代码 foreach(int C in b) Console.writeLine©; } 要在控制台输出1到10的数字,(1)处应该填写的正确的代码为:,b[i] = i+1;,b[i] = i;,b[i-1] = i,b[i+1] = i,3
3,在.NET中,一些数据类型为引用类型,当引用类型的值为( )时,表明没有引用任何对象。,Empty,null,Nothing,0,2
3,在C#中,关于continue和break,以下说法正确的是:,break是中断本次循环,continue是中断本次循环,进入一下次的循环,break是中断本次循环,进入一下次的循环,continue是中断整个循环,2
3,在C#中,关于while和do…while,以下说法正确的是:,while先执行然后判断条件是否成立,while最少的循环次数是1次,do…while先执行然后判断条件是否成立,do…while最少的循环次数是0次,3
3,“下面代码输入的结果是:( ) static void TrunCate(int[] nums) { nums[1] = 99; } static void Main(string[] args) { int[] nums = {1, 2, 3, 4}; TrunCate(nums); Console.WriteLine(nums[1]); Console.ReadLine(); }”,2,99,1,编译出现语法错误,不能运行,2
3,下列代码输出的结果是:( ) int i = 0; i = ++i + 8; Console.WriteLine(i++);,8,9,10,0,2
3,在C#中,下列代码的运行结果是( ) static void Main(){ string name=”bird”; foreach(char c in name){ Console.Write©; } },输出name,输出bird,输出ccc,编译出错,存在语法错误,2
3,Switch的语法结构不正确的是:,“Switch条件判断接收int,char,string三种类型”,Switch的case块,必须要加上break;,Switch的case块,可以没有break,Switch的default块,在条件都不满足的情况下执行,2
3,“在C#中,下列代码的运行结果是( )。 string[] names = {”“ACCP”","“BENET”","“BETEST”"}; foreach(string name in names) Console.WriteLine(name);",ACCP BENET BETEST,n a m e s,name name name,""“ACCP”" ““BENET”” ““BETEST””",1
3,以下都是C#提供的循环结构,除了:,while语句,for语句,if语句,foreach语句,3
3,当( )时,条件“expression1 XOR expression2”的值为真:,expression1为真而expression2为假,expression1为假而expression2为真,expression1和 expression2均为真,A和B都对,4
3,下列哪个语句不是C#提供而C语言没有的循环语句( ),do…loop while…语句,foreach 语句,do…while语句,while语句,2
3,当month 等于6时,下面代码的输出结果是( )。 int days = 0; switch (month) { case 2: days = 28; break; case 4: case 6: case 9: case 11: days = 30; break; default: days = 31; break; } Console.WriteLine(days);,0,28,30,31,3
3,如果 x=35, y=80,下面代码的输出结果是( )。 if (x < -10 || x > 30) { if (y >= 100) { Console.WriteLine("危险 "); } else { Console.WriteLine(“报警 “); } } else{ Console.WriteLine(“安全 “);},危险,报警,报警 安全,危险 安全,2
3,下面代码运行后,s 的值是( )。 int s = 0; for (int i = 1; i < 100;i++) { if (s > 10) { break; } if (i % 2 == 0) { s += i; } },20,12,10,6,2
3,“下面代码实现数组array的冒泡排序,括号处应填入: int[ ] array = { 20, 56, 38, 45 }; int temp; for (int i = 0; i < 3; i++) { for (int j = 0; j < ( ); j++) { if (a[j] < a[j + 1]) { temp = a[j]; array[j] = a[j + 1]; array[j + 1] = temp; } } }”,4-i,i,i+1,3-i,4
3,下面代码的输出结果是( )。 static void Main(string[ ] args) { int radius = 2; double area = GetArea(radius); Console.WriteLine(area); } private static double GetArea(int r) { return 3.14 * r * r; },2,3.14,12.56,6.28,3
3,“下面代码的运行结果是( ) static void Main(string[ ] args) { int num1 = 34; int num2 = 55; Increase(ref num1, num2); Console.WriteLine(””{0}和{1}””, num1, num2); } private static void Increase (ref int num1, int num2) { num1++; num2++; }”,35和56,34和55,34和56,35和55,4
3,在数组中对于for 和 foreach 语句,下列那些选项中的说法不正确?,foreach语句能使你不用索引就可以遍历整个数组,foreach语句总是从索引1遍历到索引Length,foreach总是遍历整个数组,如果需要修改数组元素就必须使用for语句,2
3,下列语句在控制台上的输出是什么? if(true) System.Console.WriteLine(“FirstMessage”); System.Console.WriteLine(“SecondMessage”);,无输出,FirstMessage SecondMessage,SecondMessage,FirstMessage,2
3,“已知a, b, c的值分别是4, 5, 6,执行下面的程序段后,判断变量n的值为( ) if (c < b) n = a + b + c; else if ( a + b < c) n = c - a - b; else n = a + b;”,3,-3,9,15,3
3,while语句循环结构和do…while 语句循环结构的区别在于:,while语句的执行效率较高,do…while语句编写程序较复杂,“无论条件是否成立, while语句都要执行一次循环体”,do…while循环是先执行循环体,后判断条件表达式是否成立,而while语句是先判断条件表达式,再决定是否执行循环体.,4
3,关于如下程序结构的描述中,哪一项是正确的? for ( ; ; ){ 循环体; },不执行循环体,“一直执行循环体,即死循环”,执行循环体一次,程序不符合语法要求,2
3,关于C#语言的方法,下列叙述中正确的是:,方法的定义不能嵌套,但方法调用可以嵌套,方法的定义可以嵌套,但方法调用不能嵌套,方法的定义和调用都不能嵌套,方法的定义和调用都可以嵌套,1
3,“下列程序的输出结果是: using System; class Example1 { static long fib(int n) { if (n > 2) return (fib(n-1) + fib(n-2)); else rerurn(2); } public static void Main() { Console.WriteLine(“{0}”, fib(3)); } }”,2,4,6,8,2
3,“下列程序的输出结果是( )。 using System; class Example1 { static long sub(int x, int y) { int z; z = x * x + y * y; return z; } public static void Main() { int a = 30; sub(5, 2); Console.WriteLine(“{0}”, a); } }”,0,29,30,无定值,3
3,“以下程序的输出结果是: class Example1 { public static void Main() { int i; int [] a = new int [10]; for( i = 9; i >= 0; i–) a[i] = 10 - i; Console.WriteLine(“{0}, {1}, {2}”, a[2], a[5], a[8]); } }”,2 5 8,7 4 1,8 5 2,3 6 9,3
3,“有如下程序: using System; class Example1 { public static void Main() { int x = 1, a = 0, b = 0; switch(x) { case 0: b++; break; case 1: a++; break; case 2: a++; b++; break; } Console.WriteLine(“a = {0}, b = {1}”, a, b); } } 的输出结果是:”,“a = 2, b = 1”,“a = 1, b = 1”,“a = 1, b = 0”,“a = 2, b = 2”,3
3,以下叙述正确的是:,do….while语句构成的循环不能用其他语句构成的循环来代替,do….while语句构成的循环只能用break语句退出,用do….while语句构成的循环,在while后的表达式为true时结束循环,用do….while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式,4
3,以下关于for循环的说法不正确的是:,for循环只能用于循环次数已经确定的情况,for循环是先判定表达式,后执行循环体语句,for循环体语句中,可以用break语句跳出循环体,for循环体语句中,可以包含多条语句,但要用花括号括起来,1

章,题目,选项A,选项B,选项C,选项D,正确选项
4,以下所列的各个方法头中,正确的是:,“void play(var a: Integer, var b: Integer)”,“void play(int a,b)”,“void play(int a, int b)”,“Sub play(a as integer, b as integer)”,3
4,装箱是把值类型转换到( )类型。,数组,引用,char,string,2
4,静态构造函数只能对( )数据成员进行初始化。,静态,动态,实例,静态和实例,1
4,以下类型中,不属于值类型的是:,整数类型,布尔类型,字符类型,类类型,4
4,调用重载方法时,系统根据( )来选择具体的方法,方法名,参数的个数和类型,参数名及参数个数,方法的返回值类型,2
4,下列的( )不是构造函数的特征,构造函数的函数名和类名相同,构造函数可以重载,构造函数可以带有参数,可以指定构造函数的返回值,4
4,“已知结构Resource 的定义如下: struct Resource { public int Data; } 则下列语句的运行结果为( )。 Resource [] list = new Resource [20]; for ( int i = 0; i < 20; i++) { System.Console.WriteLine(“data = {0}”, list[i].Data); }”,打印20行,每行输出都是 data = 0,打印20行,每行输出都是 data = null,打印20行,第1行输出data = 0,第2行输出data = 2,…,第20行输出data = 19,出现运行时异常,1
4,关于结构类型,下列说法哪些是正确的?,结构是值类型,结构中不允许定义带参数的实例构造函数;,结构中允许定义析构函数,结构中可以定义成员方法,但是方法内不能使用this 指针,1
4,在类的定义中,类的( )描述了该类的对象的行为特征。,类名,方法,所属的名字空间,私有域,2
4,以下类MyClass 的属性count 属于( )属性. class MyClass { int i; int count { get { return i; } } },只读,只写,可读写,不可读不可写,1
4,类MyClass 中,下列哪条语句定义了一个只读的属性Count?,private int Count;,private int count; public int Count{ get {return count;}},public readonly int Count;,public readonly int Count { get{ return count;} set{count = value;} },2
4,“C#中 MyClass 为一自定义类,其中有以下方法定义: public void Hello(){…} 使用以下语句创建了该类的对象,并使变量 obj 引用该对象,那么,访问类MyClass的Hello方法正确的是: MyClass obj = new MyClass();”,obj.Hello();,obj::Hello();,MyClass.Hello();,MyClass::Hello();,1
4,“分析下列 C#语句,注意类 MyClass 没有访问修饰符: namespace ClassLibrary1 { class MyClass { public class subclass { int i; } } } 若必须为类 MyClass 添加访问修饰符,并使 MyClass 的可访问域保持不变,则应选择:”,private,protected,internal,public,3
4,“分析下列程序: public class class4 { private string sData = “”""; public string sData{set{sData = value;}} } 在 Main 函数中,在成功创建该类的对象 obj 后,下列哪些语句是合法的?",obj.sData = “It is funny!”;,Console.WriteLine(obj.sData);,obj.sData = 100;,obj.set(obj.sData);,1
4,“类 MyClass 中有下列方法定义: public void testParams(params int[] arr) { Console.Write (”“使用 Params 参数!”"); } public void testParams(int x,int y) { Console.Write ("“使用两个整型参数!”"); } 请问上述方法重载有无二义性?若没有,则下列语句的输出为( ) MyClass x = new MyClass(); x.testParams(0); x.testParams(0,1); x.testParams(0,1,2);",有语义二义性;,使用 Params 参数!使用两个整型参数!使用 Params 参数!,使用 Params 参数!使用 Params 参数!使用 Params 参数!,使用 Params 参数!使用两个整型参数!使用两个整型参数!,2
4,调用方法时,如果想给方法传递任意个数的参数时,应选用哪个关键字:,ref,out,params,无特殊要求,3
4,C#中TestClass为一自定义类,其中有以下属性定义 public void Property{…} 使用以下语句创建了该类的对象,并使变量obj引用该对象:TestClass obj = new TestClass(); 那么,可通过什么方式访问类TestClass的Property属性?,obj.Property;,MyClass.Property;,obj :: Property;,obj.Property ();,1
4,在类的定义中,类的( )描述了该类的对象的行为特征,类名,方法,所属的命名空间,私有域,2
4,下面哪个关键字不是用来修饰方法的参数?,ref,params,out,in,4
4,下列哪一个不是类成员的是:,属性,数组,索引器,while循环结构,4
4,下列关于“方法重载”的描述中,哪些选项是不正确的?,方法重载可以扩充现有类的功能,构造函数不可以重载,方法ConsoleW(int value)是方法ConsoleW(string value)的重载,方法重载即“同样的方法名但传递的参数不同”,2
4,“以下程序的输出结果是: class Program { static void Main(string[] args) { MyStruct s1 = new MyStruct(1, 2); s1.x = 2; s1.Sum(); Console.ReadLine(); } } struct MyStruct { public int x; public int y; public MyStruct(int i, int j) { x = i; y = j; } public void Sum() { int sum = x + y; Console.WriteLine(”“the sum is {0}”",sum ); } }",the sum is 4,the sum is 3,the sum is,the sum is 0,1
4,在C#中创建类的实例需要使用的关键字是:,this,base,new,as,3
4,在下列C# 代码中,( )是类Teacher 的属性。 Public class Teacher{ int age=13; string name; public string Name{ get{return name;} set{name=value;} } public void SaySomething(){//…} },Name,name,age,SaySomething,1
4,在C# 语言中,方法重载的主要方式有两种,包括( )和参数类型不同的重载。,参数名称不同的重载,返回类型不同的重载,方法名不同的重载,参数个数不同的重载,4
4,C#的构造函数分为实例构造函数和静态构造函数,实例构造函数可以对( )进行初始化,静态构造函数只能对静态成员进行初始化。,静态成员,静态成员和非静态成员,非静态成员,动态成员,2
4,在C# 中创造一个对象时,系统最先执行的是( )中的语句,main方法,构造函数,初始化函数,字符串函数,2
4,分析一下C#片段中的属性,该属性是( )属性: private int a; public int A{ get { return a; } },可读可写,只写,只读,静态,3
4,C#类中的构造函数的特点是:,“一个类中,只能有一个构造函数”,构造函数的名称与类名称一样,构造函数在对象销毁时自动执行,要求构造函数至少有两个参数,2
4,在C#类中,使用( )关键字来设置只读属性。,get,set,let,is,1
4,在C#程序中,使用关键字( )来定义静态成员,malloc,class,private,static,4
4,在Visusl Studio.Net 开发环境中,在代码编辑器内输入对象的名称后将自动显示出对应的属性、方法、时间列表,以方便选择和避免书写错误,这种技术被称之为:,自动访问,动态帮助,协助编码,智能感知,4
4,以下说法正确的是:,构造函数名不必和类名相同,一个类可以声明多个构造函数,构造函数可以有返回值,编译器可以提供一个默认的带一个参数的构造函数,2
4,在类作用域中能够通过直接使用该类的( )成员名进行访问。,私有,公用,保护,任何,4
4,在C#类中,( )同名称、不同参数个数或者参数类型的方法存在。,方法重写,方法重载,方法取消,方法覆盖,2
4,在C#中,某程序在一个类中编写了两个同名的方法,该段代码的运行结果是( )。 public class Musician{ blic void Song(){ nsole.WriteLine(“忘记你我做不到”); public void Song(string musicName) { Console.WriteLine(musicName); } static void Main() { Musician musician = new Musician (); string musicName = “还是觉得你最好”; musician.Song(“分手总要在雨天”); }},忘记你我做不到,还是觉得你最好,分手总要在雨天,没有输出,3
4,在c#中new关键字的作用是:,新建对象实例,定义命名空间,调用类,引入命名空间,1
4,“调用重载方法时,系统根据( )来选择具体的方法?”,方法名,参数的个数和类型,参数名及参数个数,方法的返回值类型,2
4,面向对象的语言具有继承性、多态性和( )性,封装,拆箱,封闭,逻辑,1
4,class Student{ string type = ”学员”; internal string name = ”李明”; } public class Test{ static void Main(){ Student stu = new Student();//1 Console.WriteLine(stu.type);//2 Console.WriteLine(stu.name);//3 }} 在C#中,关于以上C#代码的描述正确的是:,代码1错误,代码2错误,代码3错误,代码都正确,2
4,下列关于异常处理的表述中哪些是正确的:,try、catch、finally三个字句必须同时出现,才能正确处理异常,catch字句能且只能出现一次,try字句中所抛出的异常一定能被catch字句捕获,无论异常是否抛出,finally子句中的内容都会被执行,4
4,关于参数数组,下列说法错误的是:,参数数组必须是函数的最后一个参数?,参数数组必须是一维数组,参数数组的声明同普通数组一样,参数数组所对应的实参的个数是不固定的,3
4,"在下列程序空格处填入正确的选项( )能够实现调用函数 show(). class Class1 { static void show(ref int i) { i*=15; Console.WriteLine(“i={0}”,i); } static void Main(string[] args) { int test=10; Console.WriteLine(“调用函数 show前,test={0}”,test); show(
_); Console.WriteLine(“调用函数 show后,test={0}”,test); } }”,test,out test,ref test,params test,3
4,在以下代码中,( )是类Teacher的方法。 public class Teacher { int age=33; private string name; public string Name { get{return name;} set{name=value;} } } public void SaySomething{ //……},Name,name,age,SaySomething,4
4,以下关于C#中的构造函数说法正确的是:,构造函数可以有参数,构造函数有返回值,一般情况下,构造函数总是private类型的,构造函数可以通过类的实例调用,1
4,“在C#程序中,定义如下方法,下面选项中( )错误的实现对该方法的方法重载: public string Do(int value,string s){//省略代码}”,“public int Do(int value,string s){//省略代码}”,“public string Do(string s,int value){//省略代码}”,“public void Do(string s,int value) {//省略代码}”,public void Do(){{//省略代码}},1
4,下列关于重载的说法,错误的是:,方法可以通过指定不同的参数个数重载,方法可以通过指定不同的参数类型重载,方法可以通过指定不同的参数传递方式重载,方法可以通过指定不同的返回值类型重载,4
4,C#语言与Java语言一样,也是一种面向对象的语言,C#语言中声明类的关键字是:,using,class,namespace,Main,2
4,在C#语言中,下列关于属性的描述正确的是:,属性系是以public关键字修饰的字段,以public关键字修饰的字段也可称为属性,属性是访问字段值的一种灵活机制,属性更好地实现了数据的封装和隐藏,要定义只读属性只需在属性名前加上readonly关键字,在C#的类中不能自定义属性,2
4,在.NET中,从属性的读写特性上来进行分类,可以划分为以下三种,除了:,只读属性,只写属性,读写属性,不可读不可写的属性,4
4,在C#中设计类时,如何将一个可读可写的公有属性Name修改为只读属性?,将Name的set块删除,将Name的set块置空,将Name的set块前加修饰符private,将Name添加readonly修饰符,1
4,下列语句是类myclass的一部分,obj是myclass的一个对象。 void change(int i) { i++; } public void test() { int a=100; Change(a); Console.Writeline(a);} 则调用obj.test后,控制台输出:,0,100,101,1,2

章,题目,选项A,选项B,选项C,选项D,正确选项
6,“已知在某 Windows Form 应用程序中,主窗口类为 Form1,程序入口为静态方法 From1.Main?如下所示: public class Form1 : System.Windows.Forms.Form { //其他代码 static void Main() { //在此添加合适代码 } } 则在 Main 方法中打开主窗口的正确代码是:”,Application.Run(new Form1());,Application.Open(new Form1());,(new Form1()).Open();,(new Form1()).Run();,1
6,“在 C#中,预处理器指令#region 和#endregion 的作用是:”,注释#region 和#endregion 之间的代码,为 Code Editor 定义一段可折叠代码区,#region 和#endregion 之间的代码在 Debug 版本中不参加编译,#region 和#endregion 之间的代码在 Release 版本中不参加编译,2
6,用鼠标右击一个控件时出现的菜单一般称为:,主菜单,菜单项,快捷菜单,子菜单,3
6,变量 openFileDialog1 引用一个 OpenFileDialog 对象?为检查用户在退出对话框时是否单击了“打开”按钮,应检查 openFileDialog1.ShowDialog()的返回值是否等于:,DialogResult.OK,DialogResult.Yes,DialogResult.No,DialogResult.Cancel,1
6,在使用FileStream 打开一个文件时,通过使用FileMode 枚举类型的( )成员,来指定操作系统打开一个现有文件并把文件读写指针定位在文件尾部。,Append,Create,CreateNew,Truncate,1
6,“在 Visual Studio.NET窗口中,在( )窗口中可以察看当前项目的类和类型的层次 信息?”,解决方案资源管理器,类视图,资源视图,属性,2
6,窗体中有一个年龄文本框 txtAge,下面( )代码可以获得文本框中的年龄值。,int age = txtAge;,int age = txtAge.Text;,int age = Convert.ToInt32(txtAge);,int age = int.Parse(txtAge.Text);,4
6,下面( )代码可以显示一个消息框,Dialog.Show();,MessageBox.Show();,Form.Show();,Form.ShowDialog();,2
6,当运行程序时,系统自动执行启动窗体的( )事件,Click,DoubleClick,Load,Activated,3
6,若要使命令按钮不可操作,要对( )属性进行设置,Visible,Enabled,BackColor,Text,2
6,若要使TextBox中的文字不能被修改,应对( )属性进行设置,Locked,Visible,Enabled,ReadOnly,4
6,在设计窗口,可以通过( )属性向列表框控件如ListBox的列表添加项,Items,Items.Count,Text,SelectedIndex,1
6,在VS集成开发环境中有两类窗口,分别为浮动窗口和固定窗口,下面不属于浮动窗口的是:,工具箱,属性,工具栏,窗体,4
6,引用ListBox(列表框)最后一个数据项应使用( )语句,ListBox1.Items[ListBox1.Items.Count],ListBox1.Items[ListBox1.SelectedIndex],ListBox1.Items[ListBox1.Items.Count-1],ListBox1.Items[ListBox1.SelectedIndex-1],3
6,引用ListBox(列表框)当前被选中的数据项应使用( )语句,ListBox1.Items[ListBox1.Items.Count],ListBox1.Items[ListBox1.SelectedIndex],ListBox1.Items[ListBox1.Items.Count-1],ListBox1.Items[ListBox1.SelectedIndex-1],2
6,WinForms程序中,如果复选框控件的 Checked属性值设置为 True,表示:,该复选框被选中,该复选框不被选中,不显示该复选框的文本信息,显示该复选框的文本信息,1
6,在C#.Net中,用来创建主菜单的对象是:,Menu,MenuItem,MenuStrip,Item,3
6,“在设计菜单时,若希望某个菜单项前面有一个“√”号,应把该菜单项的( )属性设置为 true?”,Checked,RadioCheck,ShowShortcut,Enabled,1
6,开发基于C#的Windows应用程序需要引用哪个名空间:,System,System.Windows.Forms,System.Collections,System.Data,2
6,消息对话框不是放置到窗体上的,是使用MessageBox .( )方法显示出来的。,Move,Show,Control,Load,2
6,设置openfiledialog1引用一个openfiledialog对象,则打开该对话框的正确代码是:,openfiledialog1.show();,openfiledialog1.showdialog();,openfiledialog1.open();,openfiledialog1.openandshow();,2
6,创建菜单后,为了实现菜单项的命令功能,应为菜单项添加( )事件处理方法。,DrawItem,Popup,Click,Select,3
6,在C#程序中,显示一个信息为“This is a test!”,标题为“Hello”的消息框,正确的语句是:,“MessageBox(“this is a test!”,”Hello”);”,“MessageBox.Show(“this is a test!”,”Hello”);”,“MessageBox(”Hello” , “this is a test!”);”,“MessageBox.Show (”Hello” , “this is a test!”);”,2
6,在Visual Studio.NET窗口,( )窗口显示了当前Visual Studio解决方案的树型结构。,类视图,解决方案资源管理器,资源视图,属性,2
6,构建Windows窗体以及其所使用空间的所有类的命名空间是下列哪个选项:,System.IO,System.Data,System.Text,System.Windows.Forms,4
6,改变窗体的标题,需修改的窗体属性是:,Text,Name,Title,Index,1
6,和C#中的所有对象一样,窗体也是对象,是( )类的实例:,Label,Controls,Form,System,3
connection,( )控件组合了TextBox控件和ListBox控件的功能。,ComboBox,Label,ListView,DomainUpDown,1
6,显示消息时,MessageBoxTcon枚举中的Error成员可以消息框中添加一个图标,该图标的形状是:,问号,i,感叹号,叉号,4
6,用FileStream 打开一个文件时,可用FileShare 参数控制( ),对文件执行覆盖、创建、打开等选项中的哪些操作;,对文件进行只读、只写还是读/写,其他FileStream 对同一个文件所具有的访问类型,对文件进行随机访问时的定位参考点,3
6,在C# WinForms程序中,创建一个窗体,其后缀名为( ) ,.aspx,.resx,.xml,.cs,4
6,在C# WinForms程序中,以下关于Timer控件说法正确的是( ),有属性Start()和Stop(),有方法Enabled(),有事件Interval,有事件Tick,4
6,在新建窗体中拖一控件,此控件自动生成的代码应放在以下哪个文件中( ),.properties.cs,.cs, .designer.cs,.resx,3

章,题目,选项A,选项B,选项C,选项D,正确选项
7,下列哪个类型的对象与ADO.NET的非连接模式无关?,DataSet,Connection,DataAdapter,DataReader,4
7,创建数据库连接使用的对象是:,Connection,Command,DataReader,DataSet,1
7,若将数据集中所作更改更新回数据库,应调用SqlAdapter的( )方法,Update,Close,Fill,Open,1
7,若将数据库中的数据填充到数据集,应调用SqlDataAdapter的( )方法,Open,Close,Fill,Update,3
7,下列哪个类型的对象是 ADO.NET 在非连接模式下处理数据内容的主要对象?,Command,Connection,DataAdapter,DataSet,4
s,“应用 ADO.NET 访问数据时,Connection 对象的连接字符串中 Initial Catalog 子串的含义是:”,Connection 对象连接到的数据库的名称,Connection 对象的身份验证信息,Connection 对象的最大连接时间,Connection 对象使用的缓存大小,1

上一篇:C#编写一个控制台应用程序,可根据输入的月份判断所在季节


下一篇:了解C#的Expression