C语言循环控制练习题.doc

上传人:b****1 文档编号:230190 上传时间:2022-10-07 格式:DOC 页数:8 大小:21.50KB
下载 相关 举报
C语言循环控制练习题.doc_第1页
第1页 / 共8页
C语言循环控制练习题.doc_第2页
第2页 / 共8页
C语言循环控制练习题.doc_第3页
第3页 / 共8页
C语言循环控制练习题.doc_第4页
第4页 / 共8页
C语言循环控制练习题.doc_第5页
第5页 / 共8页
点击查看更多>>
下载资源
资源描述

C语言循环控制练习题.doc

《C语言循环控制练习题.doc》由会员分享,可在线阅读,更多相关《C语言循环控制练习题.doc(8页珍藏版)》请在冰豆网上搜索。

C语言循环控制练习题.doc

循环控制练习题

1.设有程序段intk=10;while(k=0)k=k-1;则下面描述中正确的是 ( )

Awhile循环执行10次

B循环是无限循环

C循环体语句一次也不执行

D循环体语句执行一次

2.设有以下程序段intx=0,s=0;while(!

x!

=0)s+=++x;printf("%d",s);则( )

A运行程序段后输出0B运行程序段后输出1C程序段中的控制表达式是非法的D程序段执行无限次

3、语句while(!

E);中的表达式!

E特等价于( )

A、E==0 B、E!

=1C、E!

=0 D、E==1

4、下面程序段的执行结果是()

a=1;b=2;c=2;

while(a

printf("%d,%d,%d",a,b,c);

A、1,2,0B、2,1,0C、1,2,1D、2,1,1

5、下面程序段的运行结果是( )

x=y=0;

while(x<15)y++,x+=++y;

printf("%d,%d",y,x);

A、20,7B、6,12C、20,8D8,20

6、下面程序段的运行结果是(   )

intn=0;

while(n++<=2);printf("%d",n);

A,2B、3C、4D有语法错误

7、设有程序段

t=0;

while(printf("*"))

{t++;if(t<3)break;}下面描述正确的是(   )

A、其中循环控制表达式与0等价

B、其中循环控制表达式与’0‘等价

C、其中循环表达式是不合法的

D、以上说法都不对

8、下面程序的功能是将从键盘输入的一对数,由小到大排序输出。

当输入一对相等的数时结束循环,请选择填空。

main()

{inta,b,t;

scanf(“%d,%d”,&a,&b);

while()

{if(a>b){t=a;a=b;b=t;}

printf(“%d,%d\n”,a,b);

scanf(“%d,%d”,&a,&b);}

}A、!

a=bB、a!

=bC、a==bD、a=b

9、下面程序的功能是从键盘输入的一组字符中统计出大写字母个数m和小写字母个数n,并输出m,n中较大者,请选择填空。

#include

main()

{intm=0,n=0;

charc;

while((__)!

=’\n’)

{if(c>=’A’&&c<=’Z’)m++;

if(c>’a’&&c<=’z’)n++;}

printf(“%d\n”,m

___);}

A.c==getchar()B.getchar()C.c=getchar()D.scanf(“%c”,c)

A.n:

mB.m:

nC.m:

mD.n:

n

10、下面程序的功能是将小写字母变成对应大写字母后的第二个字母。

其中y变成A,Z变成B。

填空

#include

main()

{charc;

while((c=getchar())!

=’\n’)

{if(c>=’a’&&c<=’z’)

{_______;

if(c>=’Z’&&c<=’Z’+2)

___________;}

printf(“%c”,c);}

A.c+=2B.c-=32C.c=c+32+2D.c-=30

A.c=’B’B.c=’A’C.c-=26D.c=c+26

11,下面程序的功能是在输入的一批正整数中求出最大者,输入0时结束,请选择填空

main()

{inta,max=0;scanf(“%d”,&a);

while(____)

{if(max

scanf(“%d”,&a);}

printf(“%d”,max);}

A.a==0B.aC!

a==1D.!

a

12、下面程序的运行结果是(  )

main()

{intnum=0;

while(num<=2)

{num++;printf(“%d\n”,num);}

A.1B.12C.123D.1234

13.若运行以下程序时,从键盘输入2473,则下面程序的运行结果是()

#include

main()

{intc;

while((c=getchar())!

=’\n’)

switch(c-‘2’)

{case0:

case1:

putchar(c+4);

case2:

putchar(c+4);break;

case3:

putchar(c+3);

default:

putchar(c+2);break;}

printf(“\n”);}

A.668977B.668966C.66778777D.6688766

14.C语言中while和do-while循环的主要区别是(  )

A.do-while的循环体至少无条件执行一次

B.while的循环控制条件比do–while的循环控制条件严格

C.do-while允许从外部转到循环体内

D.do-while的循环体不能是复合语句

15.以下程序段()

x=-1

do{x=x*x;}

while(!

x);

A.是死循环B.循环执行二次C.循环执行一次D.有语法错误

16、以下描述中正确的是()

A.由于do-while循环中循环语句中只能是一条可执行语句,所以循环体内不能使用复合语句。

B.do-while循环由do开始,且while结束,在while(表达式)后面不能写分号。

C.在do-while循环体中,一定要有能使while后面表达式的值变为零(“假”)的操作。

D.do-while循环中,根据情况可以省略while

17.若有以下语句

intx=3;

do{print("%d\n",x-=2);}while(!

(--x));则上面程序段()

A.输入的是1B.输出的是1和-2C.输出的是3和0D.死循环

18.下面程序是从键盘输入学号,然后输出学号中百位数字是3的学号,输入0时结束循环,填空。

main()

{longintnum;

scanf("%ld",&num);

do{if(_____)printf("%ld,num);

scanf("%ld",&num);}

while(______);}

A.num%100/10==3.Bnum/100%10==3C.num%10/10==3D.num/10%10==3

A.!

numB.num>0==0C.!

num==0D.!

num!

=0

19.下面程序的运行结果是()

#include

main()

{inty=10;

do{y--;}while(--y);

printf(“%d\n”,--y);}

A.-1B.1C.8D.-8

20.若运行以下程序时,从键盘输入ADescriptot表示回车),下面程序的运行结果是

#include

main()

{charc;

intv0=0,v1=0,v2=0;

do{

switch(c=getchar())

{case’a’:

case’A’:

case’e’:

case’E’:

case’i’:

case’I’:

case’o’:

case’O’:

case’u’:

case’U’:

v1+=1;

default:

v0+=1;v2+=1;}

}while(c!

=’\n’);

printf(“v0=%d,v1=%d,v2=%d\n”,v0,v1,v2);}

A)v0=7,v1=4,v2=7B)v0=8,v1=4,v2=8

C)v0=11,v1=4,v2=11D)v0=12,v1=4,v2=12

21.下面程序的运行结果是

#include

main()

{inta=1,b=10;

do

{b-=a;a++;}while(b--<0);

printf(“a=%d,b=%d\n”,a,b);}

a=3,b=11B)a=2,b=8C)a=1,b=-1D)a=4,b=9

22.下面有关for循环的正确描述是()

A.for循环只能用于循环次数已经确定的情况

B.for循环是先执行循环体语句,后判断表达式

C.在for循环中,不能用break语句跳出循环体

D.for循环的循环体语句中,可以包含多条语句,但必须花括号括起来

23.对for(表达式1;;表达式3)可理解为()

A.for(表达式1;0;表达式3)

B.for(表达式1;1;表达式3)

C.for(表达式1;表达式1;表达式3)

D.for(表达式1;表达式3;表达式3)

24.若i为整型变量,则以下循环执行的次数是()

for(i=2;i=0;)printf(“%d”,i--)

A.无限次B.0次C.1次D.2次

25.以下for循环的语句是()

for(x=0,y=0;(y=123)&&(x<4);x++);

A.是无限循环B.循环次数不定C.4次D.3次

26.以下不是无限循环的语句是()

A.for(y=0,x=1;x>++y;x=I++)I=x;

B.for(;;x++=I);

C.while

(1){x++;}

D.for(I=10;;I--)sum+=I;

27.以下程序段的运行结果是()

for(y=1;y<10;)y=((x=3*y,x+1),x-1);

printf(“x=%d,y=%d”,x,y);

A.x=27,y=27B.x=12,y=13C.x=15,y=14D.x=y=27

28.下面程序段的运行结果是____

for(x=3;x<6;x++)printf((x%2)?

(“**%d”):

(“##%d\n”),x);

a)**3b)##3c)##3d)**3##4

##4**4**4##5**5

**5##5

29.下列程序段不是死循环的是(   )

A.intI=100

while

(1)

{I=I%100+1;

if(I>100)break;}

B.for(;;)

C.intk=0;

do{++k;}while(k>=0);

D.ints=36;while(s);--s;

30.执行语句for(I=1;I++<4;);后变量I的值是( )

A.3;B.4C.5D.不定

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > IT认证

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1