有以下程序:include main( ){int a=1,b;for(b =1;b =8) break; if(a%有以下程序:#include <stdio.h>main( ){ int a=1,b; for(b =1;b <=10;b++) { if(a> =8) break; if(a%2 == 1) {a + =5;continue;} a- =3; printf( "% d \n" ,b);}程序运行后的输出结果( )。A.3B.4C.5D.6

题目
有以下程序:include main( ){int a=1,b;for(b =1;b <=10;b++){if(a> =8) break; if(a%

有以下程序:#include <stdio.h>main( ){ int a=1,b; for(b =1;b <=10;b++) { if(a> =8) break; if(a%2 == 1) {a + =5;continue;} a- =3; printf( "% d \n" ,b);}程序运行后的输出结果( )。

A.3

B.4

C.5

D.6


相似考题
参考答案和解析
正确答案:B
解析:本题要注意break和continue的区别。continue语句只结束本次循环,继续下一次循环;而break语句则是结束整个循环。本题执行过程如下:a=1,b=1:a>=8不成立,a%2==1成立,执行a+=5,则a=6,继续执行下一次循环;a=6,b=2:a>=8不成立,a%2==1不成立,执行a-=3,则a=3,继续执行下一次循环;a=3,b=3:a>=8不成立,a%2==1成立,执行a+=5,则a=8,继续执行下一次循环;a=8,b=4:a>=8成立,结束整个循环,输出b的值4。
更多“有以下程序:#include <stdio.h>main( ){int a=1,b;for(b =1;b <=10;b++){if(a> =8) break; if(a% ”相关问题
  • 第1题:

    有以下程序:main(){int a=1, b; for(b=1; b<=10; b++) {if(a>=8)break;if(a % 2==1){a+=5; conti

    有以下程序: main() { int a=1, b; for(b=1; b<=10; b++) { if(a>=8)break; if(a % 2==1){a+=5; continue;} a-=3; } printf("% d\n", B) ; } 程序运行后的输出结果是______。

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析:第一次循环,a=1,b=1,第二个if条件成立a=6,跳出这次循环执行第二次循环,由于两个if条件均不成立,a=a-3=3,b=2,第三次循环,第二个if条件成立a=3+5=8,b=3,跳m这次循环执行第四次循环,a=8,b=4,第一个if条件满足,退出整个循环,输出b。

  • 第2题:

    有以下程序includemain(){intx=1,y=0,a=0,b=0;switch(X){case1:switch(y){case0:a++;b

    有以下程序 #include <stdio.h> main() { int x=1,y=0,a=0,b=0; switch(X) { case 1: switch(y) { case 0:a++; break; case 1:b++; break; } case 2:a++;b++;break; case 3:a++;b++; } printf("a=%d,b=%d\n",a,b); } 程序

    A.a=1,b=0

    B.a=2,b=2

    C.a=1,b=1

    D.a=2,b=1


    正确答案:D
    解析: 本题考查switch语句,首先,x=1符合条件casel,执行switch(y)语句,y=0符合case 0语句,执行a++并跳出switch(y)语句,此时a=1。因为case 1语句后面没有break语句,所以向后执行case2语句,执行a++,b++,然后跳出switch(x),得a=2,b=1。

  • 第3题:

    有以下程序 main() { int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break; if(a%2==1){a+=5;continu

    有以下程序 main() { int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break; if(a%2==1){a+=5;continue;} a-=3; } printf("%d\n",b); } 程序运行后的输出结果是______。

    A.3

    B.4

    C.5

    D.6


    正确答案:B

  • 第4题:

    有以下程序main(){int a=1,b;for(b=1;b<=10;b++){if(a>=8)break; if(a%2==1){a+=5;continue;} a-

    有以下程序 main() {int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break; if(a%2==1){a+=5;continue;} a-=3; } printf("%d\n",b); } 程序运行后的输出结果是

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析:本break语句和continue语句的区别:break语句使程序跳出本层循环,而continue语句使程序跳出本次循环,进入下一次循环,第一次循环,b=1,a=1;则执行第二个if语句,a为满足条件,a=a+5=6,退出本次循环;第二次循环,b=2,a=3;第三次循环,b=3,a为奇数满足第二个if语句的条件,a=a+5=8,退出本次循环,第四次循环,b=4,a=8,满足第一个if语句的条件,跳出for循环,最后输出b=4。

  • 第5题:

    有以下程序: main() { int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break;

    有以下程序: main() { int a=1,b; for(b=1;b<=10;b++) { if(a>=8)break; if(a%2=1){a+=5;continue;} a-=3; } printf("%d\n",b); } 程序运行后的输出结果是 ______。

    A.3

    B.4

    C.5

    D.6


    正确答案:B
    解析:break和continue的区别是:continue语句只结束本次循环,而不是终止整个循环的执行;而break语句则是结束整个循环过程,不再判断执行的条件是否成立。