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

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

有以下程序 main() { int a=i,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

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

以下程序段的输出结果是: int a=1,b; for(b=1;b<=10;b++) { if(a>=8) break; if(a%2==1) { a+=5; continue; } a-=3; } printf("%dn",b);

A.4

B.5

C.6

D.3


2

第2题:

有以下程序 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

第3题:

有以下程序: 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语句则是结束整个循环过程,不再判断执行的条件是否成立。

第4题:

(C语言)有以下程序

main()

{

int a=1,b;

for(b=1;b<=10;b++)

{

if(a>=8)break;

www.54yjs.cn

if(a%2==1) {a+=5;continue;}

a-=3;

}

printf("%d\n",b);

}

程序运行的结果是

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


正确答案:
          

第5题:

有以下程序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。

第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。

第7题:

有以下程序: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。

第8题:

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

有以下程序:

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,在循环体中首先判断a,如果>=8就用break跳出循环,接下来的判断语句a%2==1,是判断a除以2的余数是否为1,即a是否为奇数,是的话给a累加一个5,然后用continue开始下‘次循环。若两个条件都不满足就让a自减一个3。因此第1次循环开始a为1不大于8,且是奇数,所以a被累加5开始下—次循环;第2次循环开始a为6不大于8,不是奇数,所以a被减去3:第3次循环开始a为3不大于8,是奇数,所以a被加上一个5;第4次开始a为8,满足第一个条件跳出循环。b在第1次循环时等于1,以后每次累加1,所以最后输出为4,选项B正确。

第9题:

有以下程序: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
解析:本题是考查手工模拟执行程序的能力。a初值是1,循环开始时b值为1,由于a>=8为假,不执行break,但a%2==1为真,执行a+=5,a值变为6,再执行continue跳过不执行a-=3语句,而立即开始下一次循环。这时b值为2,由于a值为6,a>=8仍为假,不执行break,但a%2==1为假,不执行复合语句“{a+=5;continue;}”而执行a-=3,a值变为3。再开始下一次循环,这时b值为3。由于a值为3,a>=8仍为假,不执行break,但a%2==1为真,执行a+=5,a值变为8,再执行continue跳过不执行a-=3语句,而立即开始下一次循环。这时b值为4。由于a值为8,a>=8为真,执行break,停止for循环。此时输出的b值应为4。