文档详情

控制语句-Read.DOC

发布:2017-08-31约6.25万字共88页下载文档
文本预览下载声明
第三章 控制语句 一、选择题 1. 以下语句中无限循环语句是 。 A)for(;25;); B)while(1,2,3); C)while(‘\0’); D)for(;’\0’;); 答案:B 2. 若有程序段如下: a=b=c=0;x=35; if(!a)x--; else if(b);if(c)x=3; else x=4; 执行后,变量x的值是( ) A.34 B.4 C.35 D.3 答案:B 3. 下列if语句中,不正确的是( ) A.if (xy)scanf (“%d”,&x) else scanf (“%d”, &y); B.if (xy); C.if (x==y)x+=y; D.if (xy){x++;y++;} 答案:A 4. 若有int x,y;,执行程序段: for(x=1,y=1;y50;y++) { if (x=10) break; if(x%2==1) { x+=5; continue; } x-=3; } 变量x的值最终为( ) A.11 B.12 C.13 D.10 答案:D 5. 若有int x=3;,执行程序段: do { printf(%3d,x-=2); }while(!(--x)); 输出的结果是( ) A.1 3 B.1 -1 C.1 -2 D.1 -3 答案C 6. 有程序段: int a; for (scanf (“%d”,a);!a;) printf (“continue”); 则for语句中的!a等价于( )。 (A)a!=0 (B)a= =0 (C)a0 (D)a=0 答案:(B) 7. 有如下程序段: int x=1,y=1; int m,n; m=n=1; switch (m) { case 0:x=x*2; case 1: { switch (n) { case 1:x=x*2; case 2:y=y*2;break; case 3:x++; } } case 2:x++;y++; case 3:x*=2;y*=2;break; default:x++;y++; } 执行完成后,x和y的值分别是( )。 (A)x=6 y=6 (B)x=2 y=1 (C)x=2 y=2 (Dx=7 y=7 答案:(A) 8. 以下描述不正确的是 。 A.使用while和do-while循环时,循环变量初始化的操作应在循环体语句之前完成 B.while循环是先判断表达式,后执行循环语句 C.do-while 和for循环均是先执行循环语句,后判断表达式 D.for、while 和do-while循环中的循环体均可以由空语句构成 答案:C 9. 若x是int型变量,以下程序的输出结果是 。 for (x=3;x6;x++) printf ((x%2)?(“**%d”):( “##%d\n”),x); printf (“\n”); A.* * 3 B.# # 3 C.# # 3 D.* * 3 # # 4 # # 4 * * 4 * * 4# # 5 * * 5 * * 5 # # 5 答案:D 10.与“for (i=0;i10;i++)putchar ('a'+i);”功能不同的语句是 。 A)for (i=0;i10;)putchar ('a'+(++i)); B)for (i=0;i10;) putchar ('a'+(i++)); C)for (i=0;i10;putchar ('a'+i),i++); D)for (i=0;i=9;i++)putchar ('a'+i); 答案:A 11.循环控制语句“while (!scanf (“%d”,i)getchar ( );”执行的情况是 。 A)循环输入字符,遇文件结束符EOF退出 B)循环条件有错,不能执行 C)若输入数据i有错,暂停等待处理 D)键入i值后,回车退出循环 答案:A 12. 已知x=3、y=2,则表达式 x*=y+8的值为 。 A)3 B)2 C)30 D)10 答案:C 13. 设x为int型变量,则执行以下语句后,x的值为 。 x=10;x+=x- =x-x; A)10 B)20 C)40 D)30 答
显示全部
相似文档