18、for循环中,能省略的表达式有( )。
A)表达式1 B)表达式2 C)表达式3 D)3个都可以 19、下面程序中a++ 总共被执行多少次( )。 for(i=0;i<3;i++)
for(j=0;j<3;j++)
a++;
A)3次 B)2次 C)6次 D)9次 20、下面循环体被执行的次数是( )。 for(i=0;i<3;i++)
;
A)0次 B)1次 C)2次 D)3次 21、定义变量int i=-1; 则以下不是无限循环的是: ( )。 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; 则以下是无限循环的是: ( )。 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循环语句,循环体的执行次数是: ( )。 for( i=1; i<=5; i+=2 ) ;
A. 4 B. 5 C. 6 D. 7 24、以下for循环语句,循环体的执行次数是: ( )。 for( i=5; i>1; i-- ) ;
A. 4 B. 5 C. 3 D. 2 25、下面的循环体执行完后,a的值是: ( )。 for( a=2; a<8; a++) a*=2 ;
A. 10 B.9 C. 12 D. 11
二、判断题
( )1、continue语句只能用于循环语句中。 V
( )2、在for循环中允许使用嵌套循环,但只能是嵌套while循环。X
13
( )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 三、程序阅读
1、以下程序运行完后的输出数据是:__aaaaaaaaa__ main() {
int a=10 ; for( ; a ; ) {
a--; if(a==0) break; printf(\ } }
2、以下程序运行完后a的值是: __1__ main() {
int i, a=0 ; for(i=0; i<10; i++) i++; a++; printf(\ }
14
3、 以下程序运行完后a的值是: __5__ main() {
int i, a=0 ; for(i=0; i<10; i++) a++, i++;
printf(\ }
4、以下程序运行完后的结果是:_#*#*_ main() { int k;
for (k=1;k<5;k++) {
if(k%2!=0) printf(\ else printf(\ } }
5、以下程序运行完后s的值是: _1.0__ main() { int n ; float s=1.0; for(n=10;n>1;n--) s=s+1/n; printf(\ }
15
第七单元 while与do-while循环
一、选择题
1、break语句的正确的用法是( )。
A)无论在任何情况下,都中断程序的执行,退出程序。 B)在多重循环中,只能退出最靠近的那一层循环语句。 C)跳出多重循环。 D)只能修改控制变量。
2、int i=0; while( i++ < 5); 循环结束后i的值是( A)6 B)7 C)5 D)8
3、语句while ( E ); 括号中的表达式E等价于( A)E==0 B)E!=1 C)E!=0 D)E==1
4、 int i=1; while( --i ) ; 循环次数是( )。 A)无限次 B)0 C)2 D)1 5、下述程序段的运行结果是 。 int a=1,b=2, c=3, t; while ( a
{t=a; a=b; b=t; c--;} printf(―%d,%d,%d‖,a,b,c);
A)1,2,0 B)2,1,0 C)程序错误 6、 程序运行的结果是( )。 main() {
int x;
x=3; do {
printf(\ }while(x); }
16
)。 )。 D)2,1,1