2. 3. 4. 5. 6. C#中,所有类型(包括所有的值类型和所有的引用类型)的基类是【object类】。 当整数b赋值给一个object对象时,这个过程称为【装箱】。
设x为int型变量,请写出描述“x是奇数”的C#语言表达式【x%2 != 0】。
设x为int型变量,请写出描述“-10<=x<=10”的C#语言表达式【-10<=x && x<=10】。 在C#中,bool类型只有两种值,分别是【true】和【false】。
第3章
一.选择题
1. 在C#语言中,if语句后面的表达式,不能是【 B 】。
A)逻辑表达式 C)关系表达式
B) 算术表达式 D) 布尔类型的表达式
2. 在C#语言中,switch语句用【 A 】来处理不匹配case语句的值。
A)default C)break
B) anyelse D) goto
3. 下列程序的输出结果是【C 】。
using System;
class Program { public static void Main(string[] args) { 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) a=2,b=1 B) a=1,b=1 C)a=1,b=0
D) a=2,b=2
4. 以下叙述正确的是【D 】。
A) do??while语句构成的循环不能用其他语句构成的循环来代替 B) do??while语句构成的循环只能用break语句结束循环
C) 用do??while语句构成的循环,在while后的表达式为true时结束循环 D) 用do??while语句构成的循环,在while后的表达式应为关系表达式或逻辑表达式
5. 以下关于for循环的说法不正确的是【A 】。
A) for循环只能用于循环次数已经确定的情况 B) for循环是先判定表达式,后执行循环体 C) 在for循环中,可以用break语句跳出循环体
D) for循环体语句中,可以包含多条语句,但要用花括号括起来
6. C#提供的4种跳转语句中,不推荐使用的是【 D 】。
A)return
B) break
C)continue
D) goto
7. 执行下列语句序列后,i和j的值分别是【 C 】
int i=3,j=5; if(i-1>j) i--;else j--;
A) 2,4 B)2,5 C)3,4 D)3,5
8. 下列语句序列执行后,j的值是【 B 】
int j=5,i=6; while(i-->3) --j;
A)1 B)2 C)3 D)4
9. 以下for循环的执行次数是【 B 】
for(int i=1;(i==1)&(i>2);i++)
A)无限次 B)一次也不执行 C)执行1次 D)执行2次
10. 以下由do-while语句构成的循环执行次数是【 C 】
int m=1; do { ++m;
}while(m<1);
A)有语法错误,不能执行 B)一次也不执行 C)执行1次 D)执行2次 11. 循环语句“for(int i=0;i A.1 B.n-1 C.n D.n+1 12. 在下面循环语句中循环体执行的次数为( B ) for(int i=0;i A.n/2 B.n/2+1 C.n/2-1 D.n-1 13. 下面有关for语句的描述有错误的是( A )。 A. 使用for语句时,可以省略其中的某个或多个表达式,但不能同时省略全部3个表 达式 B. 在省略for语句的某个表达式时,如果该表达式后面原来带有分号,则一定要保留它所带的分号 C. 在for语句表达式中,可以直接定义循环变量,以简化代码 D. for语句的表达式可以全部省略 14. 以下哪段代码,最合理地实现了以下结构图描述的流程(B) A. if(x>=0) B.if(x>=0) y=-x;y=x; elseelse y=x;y=-x; C.while(x>=0) D.while(x>=0) {{ case true: y=x;case true: y=-x; break;break; case false: y=-x; case false: y=x; break;break; }} 15. 以下关于C#代码的说法正确的是( A )。 usingSystem; classTest { staticvoidMain() { for (inti = 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()); } } } } A) 程序将报告编译错误,提示case标签不能贯穿到另一个标签,不能运行 B) 运行是输出149 C) 运行时输出123246369 D) 运行时在屏幕上没有输出 16. 已知a,b,c的值分别是 4,5,6,执行下面的程序段后,判断变量 n的值为(C) if(c else if(a+b A.3 B.-3 C.9 D.15 17. while语句循环结构和 do?while 语句循环结构的区别在于(D) A.while语句的执行效率较高 B.do?while语句编写程序较复杂 C.无论条件是否成立,while语句都要执行一次循环体 D.do?while循环是先执行循环体,后判断条件表达式是否成立,而 while语句是先判断条件表达式,再决定是否执行循环体. 18. 下列代码输出正确的是(D) namespace Answer { class Program { static void Main(string[] args) { inti,j; for(i=1; i>=0; i--) for(j=0; j<=i; j++) Console.WriteLine(“i*j={0}”,i*j); } } } A.i*j=0 i*j=0 i*j=0B.i*j=1 i*j=0 i*j=1 C.i*j=1 i*j=1 i*j=0D.i*j=0 i*j=1 i*j=0 19. 下面对i值的输出结果说法正确的是(A) namespace Answer { class Program { static void Main(string[] args) { inti=0; do { i++; } while(i<5); Console.WriteLine(“i值的为:{0}”,i) ;} } } A.i的值为: 5B.i的值为: 6 C.i的值为: 7D.i的值为: 8 20. 下面代码运行后,s 的值是(B)。 int s = 0; for (inti = 1; i< 100;i++) { if (s > 10) { break; } if (i % 2 == 0) { s += i; } }
相关推荐: