循环2
一.单选题(共14题,14.0分)
1.若有定义:char r;, 则变量r所占内存空间的大小为______字节。(1.0分)
A、1
B、2
C、4
D、8
2.若int a=2, b=3, x=0 ; 则执行以下语句后x值是______。(1.0分)
if ( a < (a+b)/2 ) x=a ; else x=b ;
A、0
B、1
C、2
D、3
3.下面的C语言运算符中,优先级最高的是____。(1.0分)
A、%
B、=
C、&&
D、>=
4.若有定义int x=7,y=3; 则下列选项中与表达式(x-y)?x:y中的条件表达式x-y等价的是______。(1.0分)
A、x-y>0
B、x-y<0
C、x-y<0‖x-y>0
D、x-y==0
5.若有定义:float a=10, b=5; 则表达式:(int)a/4+b/2的值是______。(1.0分)
A、4
B、4.5
C、5
D、5.5
6.若有定义:int x=0;下面的循环语句执行后,变量x的值为______。(1.0分)
for( x=0,m=1 ; m<10 ; m=m+3 )
for( n=1 ; n<=m ; n++ ) x++;
A、7
B、12
C、39
D、55
7.设变量已正确定义并赋值,以下正确的表达式是______。(1.0分)
A、x=y*5=x+z
B、int(15.8%5)
C、x=y+z+5,++y
D、x=25%5.0
8.执行语句for ( m=100; m>=0; m-- ) n++ ; 后变量m的值是______。(1.0分)
A、-1
B、0
C、1
D、100
9.若有定义:float m=-1, n=1, y;,则表达式 n>y>m 的值是______。(1.0分)
A、-1
B、0
C、1
D、无法确定
10.以下选项中,非法的C语言常量是______。(1.0分)
A、’’
B、6.18e-5
C、0x5G
D、0L
11.设有定义:int k=0;,下列选项中与其他3个表达式的值不相同的是______。(1.0分)
A、k++
B、k+=1
C、++k
D、k+1
12.以下选项中不能用作C程序合法标识符的是______。
(1.0分)
A、_void
B、long
C、a_0
D、_100
13.若有定义:int n=0;下面的循环语句执行后,变量n的值为______。(1.0分)
for( i=1 ; i<10 ; i++ )
for( j=0 ; j<=5 ; j++ ) n++;
A、45
B、50
C、54
D、60
14.下列叙述中正确的是______。(1.0分)
A、在C语言中,多分支结构只能用switch 语句实现
B、在C语言中,多分支结构既可以用if语句实现,也可以用switch语句实现
C、break 语句必须与switch 语句中的case 配对使用
D、if语句可以嵌套使用,但switch 语句不能嵌套使用
二.填空题(共6题,18.0分)
1.下面程序的输出结果为_____。(3.0分)
void main ( )
{
int k ;
for ( k = 2 ; k<=100 ; k++ )
if ( k%2 == 1 && k%3 == 1 && k%5 == 1 ) break ;
printf ( "%d" , k );
}
2.下面程序的输出结果为____。(3.0分)
void main( )
{ int n=50, f = 1, k;
while ( f == 1 )
{
for( k = 2 ; k <= n/2 ; k++ )
if(n%k==0){ f=0; break ;}
if ( f == 0 ) { n=n-1; f=1; }
else break;
}
printf( "%d", n );
}
3.下面程序的输出结果为____。(3.0分)
void main( )
{ int k, j, n=10;
for ( k=5; k<=10; k++ )
for ( j=0; j<=k; j++ ) n++;
printf("%d", n );
}
4.下面程序的输出结果为____。(3.0分)
#include#include void main ( ) { int n = 20 , f = 0 , a; while ( f == 0) { a = 2 ; f = 1 ; while ( f == 1 && a <= sqrt(n) ) if ( n % a == 0 ) f = 0 ; else a = a + 1 ; if ( f == 0 ) n = n + 1 ; } printf ( "%d" , n ) ; }
5.下面程序的输出结果为____。(3.0分)
void main ( )
{ int i , j , a=0 ;
for ( i=0 ; i<2 ; i++ )
{ for ( j=4 ; j>=0 ; j-- ) a++ ; }
printf ( "%d" , a );
}
6.下面程序的输出结果为____。(3.0分)
void main ( )
{
int x = 10, y = 0 , a = 0 , k ;
for ( k=1 ; k<=5 ; k++ )
{
do
{ x=x-2; y=y+2; a++; }
while ( x>5 || y<-1);
}
printf ( "%d" , a );
}



