C语言选择题(附答案) 下载本文

if(c=a+b) printf(―OK!‖) else printf(―NO!‖); 输出结果是( A )。

A)OK! B)NO C)程序错误 D)以上都不对

12、设整型变量a,b的值分别为1,0,那么a= =b 的结果是( A )。 A)0 B)1 C)2 D)都不对

13、设整型变量a,b的值分别为1,0,那么!(a = = b)的结果是( B )。 A)0 B)1 C)2 D)都不对

14、设整型变量a,b的值分别为1,2,那么!a && b的结果是( A )。 A)0 B)1 C)2 D)都不对 15、设x为非零,则下列描述错误的是( D )。 A)!(x = = 0) B)x != 0 C)3*x != 0 D)x>0 16、下列表达式的值中哪个表示为逻辑假( C )。 A)1 B)3 C)0 D)-1

17、设整型变量a,b的值分别为6,2,那么a%b != 0的结果是( A )。 A)0 B)1 C)2 D)3 18、下列属于分支结构的是( B )。

A)while B)switch C)for D)以上都不是

19、设整型变量a,b的值分别为1,0,那么a || (++b)的结果是( B )。 A)0 B)1 C)2 D)都不对

20、设整型变量a,b的值分别为1,0,那么a&&(b++)的结果是( A )。 A)0 B)1 C)2 D)都不对 二、判断题

( )1、在分支结构switch中,case后面跟的一定是常量。 V ( )2、逻辑运算符优先级高于关系运算符的优先级。 X ( )3、关系运算符中,= = 的优先级要高于 >= 的优先级。 X ( )4、关系运算符中,> 的优先级要高于 >= 的优先级。 X ( )5、在条件表达式中,-3代表为真。 V ( )6、在条件表达式中,非0代表为真。

V

( )7、条件运算符 ?: 是2目运算符。 X

9

( )8、在switch语句中,有没有break的情况都是相同的。 X ( )9、判断a,b两个数是否相等,用 a = b。 X ( )10、判断a,b两个数是否相等,用 a = = b。 V

第六单元 for循环结构

一、选择题

1、对下边for循环,循环体体执行次数是( B )。 for ( i = 1; i <= 10; i = i + 2 )

;

A) 6

B) 5

C) 4 D) 7

2、对下边for循环,循环体执行次数是( C )。 for ( i = 5; i > 1; i -- )

;

A) 6

B) 5

C) 4

D) 7

3、下边循环执行完后,a为( C )。 for ( a= 1;a< 5; a++ ) a = 2 * a; A) 5

B) 4 C) 7 D) 8

4、下边循环执行完后,s为( A )。//无法确定 for ( a= 1; a< 5; a++ )

for ( b= s = 0; b< a; b++, s = s +a)

;

A) 6

B) 4

C) 7

D) 无答案

7、下边程序段输出结果是( A )。

int i , a= 0;

for ( i = 0; i < 10; i++ )

a++, i++;

printf(\

A)5 B)6 C)9 D)10

10

8、以下for循环的次数为( D )。 for(x = 0,y = 0; (y=123) && (x<4) ; x++)

;

A)不循环 B)无限次 C)3 D)4 9、从循环体内某一层跳出,继续执行循环外的语句是:( A )。 A) break语句 B)return语句 C)continue语句 D)空语句

11、循环语句 for (x=0,y=0; (y!=123)|| (x<4);x++) ;的循环执行次数为( C )。 A)无限次 B)不循环 C)4次 D)3次

12、设i,j,k均为int型变量,k初值为0,执行完下面的for循环后,k的值为( A for (i=0,j=10; i<=j; i++,j--) k=i+j;

A)10 B)9 C)8 D)7 13、以下程序段的循环次数是( C )。 for (i=2 ; i=0 ; )

printf(―%d‖ , i--) ;

A)无限次 B)0次 C)1次 D)2次 14、下边程序段循环执行的次数是( B )。 int a= 0, j = 10; for ( ; j > 3; j-- ) {

a++;

if ( a> 3) break ; }

A) 3 B、4 C、5 D)6

18、for循环中,能省略的表达式有( D )。

A)表达式1 B)表达式2 C)表达式3 D)3个都可以 A)3次 B)2次 C)6次 D)9次 20、下面循环体被执行的次数是( 2 )。 for(i=0;i<3;i++)

11

)。

21、定义变量int i=-1; 则以下不是无限循环的是: ( C )。 A. for (i=0; i=1; i++) ; B. for ( i=0; ; i--) ; C. for ( ; i>-10; i--) ; D. for ( ; i<0 ; ) ; 22、定义变量int i=2; 则以下是无限循环的是: ( D )。 A. for (i=0;i==1;i++) ; B. for (i=0; i<0 ; ) --i;

C. for ( ; i>10; i++) ; D. for ( ; i ; ++i ) ;

23、以下for循环语句,循环体的执行次数是: ( A )。/*该题经验证是3次,不知道怎么回事 ,自己取研究*/

for( i=1; i<=5; i+=2 ) ;

A. 4 B. 5 C. 6 D. 7 24、以下for循环语句,循环体的执行次数是: ( A )。 for( i=5; i>1; i-- ) ;

A. 4 B. 5 C. 3 D. 2 25、下面的循环体执行完后,a的值是: ( A )。 for( a=2; a<8; a++) a*=2 ;4

A. 10 B.9 C. 12 D. 11

二、判断题

( )1、continue语句只能用于循环语句中。 V

( )2、在for循环中允许使用嵌套循环,但只能是嵌套while循环。X ( )3、break语句只能用于循环语句中。 X ( )4、for循环可能一次都不执行。 V

( )5、break语句是结束本层循环。 V ( )6、break语句是结束本次循环。 X ( )7、continue语句是结束本层循环。 X ( )8、continue语句是结束本次循环。 V

( ) 9、在循环过程中,使用break语句和continue语句的作用是一样的。 X

( )10、for( ; ; )这写书写for循环是合法的,即for三个表达式都是可以省略的。 V

三、程序阅读

12