《C#复习题(86页).doc》由会员分享,可在线阅读,更多相关《C#复习题(86页).doc(90页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-C#复习题一、编程基础01、C#程序设计语言属于什么类型的编程语言( )A)机器语言 B)高级语言C)汇编语言 D)自然语言02、下列标识符命名正确的是( ) A) exam-1 B)Main C)_months D)X.2503、下面属于合法变量名的是( )A) P_qr B)123mnp C) char D) x-y04、下列标识符命名正确的是( ) A) X.25 B)4foots C)val(7) D)_Years05、可用作C#程序用户标识符的一组标识符是( )A)void define +WORD B)a3_b3 _123 YNC)for -abc Case D)2a DO si
2、zeof06、下列属于合法C#变量名的有( )A)x_123 B)if C)1_x D)3x07、C#中下列变量标识符定义不正确的是( )A)m_n B)_a124; C)3_4; D)udouble08、在 C#语言中,下列能够作为变量名的是( )A)if B)3ab C)a_3b D)a-bc09、关于 C#程序的书写,下列不正确的说法是( )A)区分大小写 B)一行可以写多条语句C)一条语句可写成多行D)一个类中只能有一个 Main()方法,因此多个类中可以有多个 Main()方法10、C#程序的( )方法被成为程序的大门,应用程序从这里开始运行 A) Main() B) Begin()
3、 C) Start() D) main()11、C#源程序文件的拓展名是( )A)vb B)c C)cpp D)cs12、C#中导入某一命名空间的关键字是( )A) using B)use C)import D) include13、C#语言中声明类的关键字是( )A)using B)class C)namespace D)Main14、C#程序中,使用关键字( )来声明自定义的名称空间。A)namespaceB)newC)importD)try15、在C#中,引用命名空间System的正确语句是( )A)using System; B)#import ;C)uses System;D)#in
4、clude ;16、以下数据类型中不可以使用算术运算运算的是( )A)bool B)char C)decimal D)sbyte17、以下数据类型不能表示负数范围的是( )A)sbyte B)decimal C)double D)uint18. 在C#中,表示一个字符串的变量应使用以下哪条语句定义?( )A)CString str; B)string str; C)Dim str as string D)char * str;19、在C#中,( )类提供了操作字符串的方法。A)System.ThreadingC)System.CollectionsB)System.IOD)System.Str
5、ing20、如果左操作数大于右操作数,( )运算符返回false。 A)= B) C) 5 ? 0 : 1的运算,变量a的最终值是什么?( )A)4 B)0 C)1 D)343、设int x=10, a=0, b=25;则条件表达式x 1 ? a + 10 : b 的值是( )A)0 B)1 C)10 D)2544、有int a=20,b=5,c=10,d=3;bool s,e = false; 则表达式(s = a 0)运算后,e的值是( )A)0 B)1 C)true D)false45、当( )时,条件“expression1 expression2”的值为真。A) expression
6、1为真而expression2为假 B) expression1为假而expression2为真C) expression1和 expression2均为真 D) A和B都对46、C#中,执行下列语句变量x和y的值是多少?( )int x=100;int y=+x;A)x=100 y=100 B)x=101 y=100 C)x=100 y=101 D)x=101 y=10147、在C#中,下列代码运行后,变量Max的值是( )int a = 5,b = 10,c = 15,Max = 0;Max = a b ? a : b;Max = c b ? a+ : -b;System.Console.
7、WriteLine(c); A)10 B)11 C)19 D)2049、以下语句不可以在屏幕上输出Hello,World的语句是( )A)Console.WriteLine(“Hello” + ”,World”);B)Console.Write(“Hello,0” , ”World”);C)Console.WriteLine(“0,1” , ”Hello,World”);D)Console.Write(“Hello,World”);50、下列代码的运行结果是:( )class Teststatic void Main(string args)int a = 30, b = 20;b = a;
8、a = 10;System.Console.WriteLine( a );System.Console.WriteLine( a / b ); A)10 B)10C)30 D)100 1 0 1.551、以下的C代码:代码运行结果为( ) static void Main(string args)System.Console.WriteLine(运行结果: 0, Console.ReadLine();A)在控制台窗口显示“运行结果:”B)在控制台窗口显示“运行结果:0”C)在控制台窗口显示“运行结果:,ConsoleReadLine”D)如果用户在控制台输入 A,那么程序将在控制台显示“运行结
9、果:A”52、请仔细阅读有如下C#代码:int A = 3;int B = 4Console.WriteLine(A + B);因为第二行代码少写了一个分号,程序运行时将( )。A)产生语法错误B)产生语义错误 C)中断D)正常运行53、下面代码的输出结果是( ) class Teststatic void Main(string args)int x = 5;int y = x+;System.Console.Write (y + “ ”);y = +x;System.Console.WriteLine(y); A)5 6 B) 6 7 C) 5 6 D) 5 754、运行如下的C#代码段将
10、( ) int a = 10;string b = “10”;Console.WriteLine (a + b);A)输出:20B)输出:1010C)输出:10+10D)编译报错,提示数据类型不匹配55、下列代码输出的结果是:( )int i = 0,j;j = +i + 8;Console.WriteLine(j+);A)8 B)9 C)10 D)编译出现语法错误,不能运行56、以下程序的输出结果是( ) class Test static void Main(string args) int a=5,b=4,c=6,d; System.Console.WriteLine(“0”, d=ab
11、?(ac?a:c):b); A)5 B)4 C)6 D)不确定二、程序流程控制01、判断下列语句中哪个存在语法错误( )。 bool a=true,b=false,c=true;int i=0;A)if(a|b) B)if(i) C)if(i!=3) D)if(i=3)=false)02、if语句后面的表达式应该是( )A)逻辑表达式 B)条件表达式 C)算术表达式 D)任意表达式03、为了避免嵌套的条件分支语句if-else的二义性,C#规定:程序中的else总是与( )组成配对关系。 A)缩排位置相同的if B)在其之前未配对的if C)在其之前未配对的最近的if D)同一行上的if04、
12、下列语句在控制台上的输入是什么?( )if(true)System.Console.WriteLine(FirstMessage);System.Console.WriteLine(SecondMessage); A)无输出B)FirstMessage C)SecondMessage D)FirstMessage SecondMessage05、如果 x=35, y=80,下面代码的输出结果是( )。 if (x 30) if (y = 100) Console.Write (危险 ); else Console.Write (报警 ); else Console.Write (安全 );A)
13、危险 B)报警 C)报警 安全 D)危险 安全06、两次运行下面的程序,如果从键盘上分别输入6和3,则输出结果是( )。int x;x = int.Parse(Console.ReadLine();if( x+ 5 )Console.WriteLine( x );elseConsole.WriteLine( x- );A)7和5 B)6和3 C)7和4 D)6和407、在C#中,下列代码的运行结果是( ) using System;class Test public static void Main(string args) int a=21,b=22,c=23; if( a b ) Cons
14、ole.WriteLine(b); else Console.WriteLine(a+b+c); A)21 B)22 C)23 D)6608、关于C#中的switch case 语句,以下说法正确的是( ) A)switch判断的表达式可以是整型或者字符型,但不能是字符串型B)在该语句中最多不能超过5个case子句C)在该语句中只能有一个default子句D)在该句中只能有一个break语句09、下列说法中不正确的是( )?A)C#中以“;”作为一条语句的结束B)C#中注释是不参与编译的C)C#有三种不同的注释类型D)swith语言中case标签结束可以有break语句,也可以没有。10、sw
15、itch语句的语法结构不正确的是( )A)switch条件判断接收int,char,string三种类型B)switch的case块,必须要加上break;C)switch的case块,可以没有break D)switch的default块,在条件都不满足的情况下执行11、下列关于switch语句的表述中哪个是正确的( )?)switch语句的控制表达式可以是任何数据类型B)switch语句可以出现default标签,也可以不出现default标签C)switch中可以有两个或两个以上的case标签的常量与控制表达式的值相同D)switch语句中case标签结束可以有break语句,也可以没有
16、。12、在C#的条件判断语句switch case结构中,( )子句用于指定在找不到匹配项时执行的动作A)continue B)goto C)else D)default13、当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;A)0 B)28 C)30 D)3114、以下关于 for 循环的说法不正确的是( )A)for 循环只能用
17、于循环次数已经确定的情况B)for 循环是先判定表达式,后执行循环体语句C)for 循环中,可以用 break语句跳出循环体D)for 循环体语句中,可以包含多条语句,但要用花括号括起来15、在C#语言的循环结构中,首先执行一次,然后再判断条件的循环结构是( )A)while循环 B)dowhile循环 C)for循环 D)foreach循环16、下列结构图对应于哪种结构(A是程序段,P是条件)?( )。A)while 循环结构 B)dowhile 循环结构C)ifelse 选择结构 D)switchcase选择结构17、关于如下程序结构的描述中,哪一项是正确的?( )for ( ; ; )
18、循环体; A)不执行循环体 B)一直执行循环体,即死循环C)执行循环体一次 D)程序不符合语法要求18、以下都是C#提供的循环结构,除了( )。A)while语句B)for语句 C)if语句 D)foreach语句19、下列哪个语句不是C#提供的循环语句( )A)doloop while语句B)foreach 语句C)dowhile语句D)while语句20、在C#中,关于while和dowhile,以下说法正确的是( )A)while先执行然后判断条件是否成立 B)while最少的循环次数是1次C)dowhile先执行然后判断条件是否成立 D)dowhile最少的循环次数是0次21、关于循环
19、语句下列错误的是( )A)for语句while语句与do while语句可以相互替换。B)while(true)Console.WriteLine(“Hello!”);将无限输出字符串Hello!C)for(int i=5;i13;i+) ; 这个循环体将运行8次D)while语句中的条件必须是布尔类型的结果22、下列语句执行后y的值为( )int x=0,y=0;while(x1) Console.Write(-count);A)32 B)321 C)21 D)224、已知如下程序,下列选项放在空白处不能输出*的是( )int x=6;doConsole.WriteLine(“*”);x-;
20、-x;while(_);/空白处 A)x=1 B)x=2 C)x0 D)x3 25、下面代码运行后,s 的值是( )。int s = 0; for (int i = 1; i 10) break; if (i % 2 = 0) s += i; A)20 B)12 C)10 D)626、for(int i=1;i=3;i+)switch(i)case 1:Console.Write( i );case 2:Console.Write( i * 2 );case 1:Console.Write( i * 3 );上述关于C#代码的描述正确的是( )。A)程序将报告编译错误,提示Case标签不能贯穿
21、到一个标签,不能运行B)运行时输出149C)运行时输出123246369D)运行时在屏幕上没有输出27、在C#中,关于continue和break,以下说法正确的是( )A)break是中断本次循环 B)continue是中断本次循环,进入一下次的循环C)break是中断本次循环,进入一下次的循环 D)continue是中断整个循环28、在C#中,下列代码的运行结果是( )static void Main(string args) string name=”bird”; foreach(char c in name) Console.Write(c); A)输出name B)输出bird C)
22、输出cccc D)编译出错,存在语法错误三、数组01、在C#程序中,使用( )关键字来创建数组A)new B)array C)static D)this02、C#数组主要有三种形式,它们是()。A)一维数组 、二维数组、三维数组 B)整型数组、浮点型数组、字符型数组C)一维数组、多维数组、不规则数组 D)一维数组、二维数组、多维数组03、下列哪个选项能正确的创建数组?( )A)int, array = int4,5;B)int size=int.Parse(Console.ReadLine();int pins=new intsize;C)string str=new string;D)int
23、 pins = new int2;04、假定一个10行20列的二维整型数组,下列哪个定义语句是正确的( )。A)int arr = new int10,20;B)int arr = int new10,20;C)int, arr = new int10,20; D)int, arr = new int20;10;05、有说明语句double, tab=new double2,3;那么下面叙述正确的是( )。A)tab是一个数组维数不确定的数组,使用时可以任意调整B)tab是一个有两个元素的一维数组,它的元素初始值分别是2,3 C)tab是一个二维数组,它的元素个数一共有6个D)tab是一个不规
24、则数组,数组元素的个数可以变化06、数组pins的定义如下: int pins=new int49,2,3,1; 则pins1=( ) A)1 B)2 C)3 D)907、下列语句创建了( )个string 对象 string , strArray = new string3,4A)0 B)3 C)4 D)1208、以下数组声明中,不正确的有( ) A)int a; B)int a = new int2; C)int a=1,3; D)int a = new int1,3;09、在C#中定义一个数组,正确的代码为( )。A)int arraya = new int5; B)int arraya
25、 = new int5;C)int arraya = new int; D)int arraya5;10、在C#中,下列代码的运行结果是( )。int age1 = new int10,20;int age2 = age1;age21 = 30;Console.WriteLine(age11);A)0B)10C)20D)3011、在数组中对于for 和 foreach 语句,下列那些选项中的说法不正确?( )。A)foreach语句能使你不用索引就可以遍历整个数组B)foreach语句总是从索引1遍历到索引LengthC)foreach总是遍历整个数组D)如果需要修改数组元素就可以使用for语
26、句12、下面代码实现数组array的冒泡排序,画线处应填入( )。int array = 20, 56, 38, 45 ;int temp, n = array.Length;for (int i = 0; i n - 1; i+) for (int j = 0; j _; j+) if (array j array j + 1) temp = array j; arrayj = array j + 1; arrayj + 1 = temp; A)n-i B)i C)i+1 D)n-i-113、class Teststatic void Main(string args)int b = new
27、 int10;for(int i=1;i 18) continue;Console.Write(i + ”,”);A)16,18,20,14,22, B)16,18,14,22, C)16,18,14, D)16,18,15、分析下列代码段,运行结果是什么?( )。static void Main(string args)string words = new stringa,b,c;foreach (string word in words)word = abc;Console.WriteLine(word);A)a b c B)abc abc abc C)bc ac ab D)不能正确编译1
28、6、以下程序的输出结果是( )string str=b856ef10;string result= ;for(int i=0; stri= a& stri= z; i+=3)result =stri+result;Console.WriteLine(result);A)10fe658b B)feb C)10658 D)b17、在C#中,下列代码的运行结果是( ) using System;class Test static void Main(string args) string strings=“a”,”b”,”c”; foreach(string info in strings) Console.Write(info);A)abc B)a C)b D)C18、在C#中,下列代码的运行结果是( )。string names = “ACCP”,”BENET”,”BETEST”;foreach(string name in names)Console.WriteLine(name);A)ACCP B)n