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);
case4:
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.下面程序的运行结果是()
main()
{inty=10;
do{y--;}while(--y);
printf("%d\n",y--);}
A.-1B.1C.8D.-8
20.下面程序的运行结果是()
#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'0':
case'0':
case'u':
case'U':
v1+=1;
default:
v0+=1;v2+=1;}
}while(c!
='\n');
print(%d,%d,%d",v0,v1,v2);}
A.7,4,7B.8,4,8C.11,4,11D.12,4,12
21.下面程序的运行结果是()
main()
{inta=1,b=10,
do{b-=a;a++;}while(b-,0);
printf("%d,%d",a,b);}
A.3.11B.2,8C.1,-1D.4,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.不定
31.下面程序的功能是计算1到50中是7的倍数的数值之和,请选择填空。
Main()
{intI,sum=0;
for(I=1;I<=50;I++)
if(______)sun+=I;
printf(“%d”,sum);}
A.(int)(i/7)=i/7B.(int)i/7=i/7C.i%7+0D.i%7=0
32.下面程序的运行结果是( )
main()
{inta;
for(a=1;a<=5;a++
switch(a%5)
{case0:
printf(“*”);break;
case1;printf(“#”);break;
default:
printf(“\n”);
case2:
printf(“&”);}}
33.下面程序的运行结果是( )
main()
{intx,I;
for(I=1;I<100;I++)
{x=I;NO.14
if(++x%2==0)
if(++x%3==0)
if(++x%7==0)
ptintf(“%d”,x);}}
A.3981B.4284C.2668D.2870
34.下面程序的运行结果是()
main()
{intI,b,k=0;
for(I=1;I<=5;I++)
{b=I%2;
while(b-->=0)k++;}
printf(“%d,%d”,k,b);}
A.3,-1B.8-1C.3,0D.8,-2
35.以下正确的描述是()
A.continue语句的作用是结束整个循环的执行
B.只能在循环体内和switch语句体内使用break语句
C.在循环体内使用break或continue语句
D.从多层循环嵌套中退出时,只能使用goto语句
36.下面程序段()
for(t=1;t<=100;t++)
{scanf(“%d”,&x);
if(x<0)continue;
ptintf(“%3d”,t);}
A.当x<0时整个循环结束
B.x>=0时什麽也不输出
C.printf函数永也不执行
D.最多允许输出100个非负整数
37.下面程序段()
x=3;
do{y=x--;
if(!
y){printf(“x”);continue;}
printf(“#”);}
while(1<=x<=2);
A.将输出##B.将输出##*
C.是死循环D.含有不合法的控制表达式
38.以下是死循环的是()
A.for(I=1;;)
{if(++I%2==0)continue
if(++I%3==0)break;}
B.I=32767;
{if(I<0)break;}while(++I);
C.for(I=1;;)if(++I<10)continue;
D.i=1;while(I--);
39.以下描述正确的是()
A.goto语句只能用于退出多层循环
B.switch语句中不能出现continue语句
C.只能用continue语句来终止本次循环
D.在循环中break语句不能独立出现
40.下面程序的运行结果是()
#include
main()
{intk=0;charc=’A’;
do{switch(c++)
{case’A’:
k++;break;
case’B’:
k--;
case’C’:
k+=2;break;
case’D’:
k=k%2;continue;
case’E’:
k=k*10;break;
default:
k=k/3;}
while(c<’G’);
printf(“k=%d\n”,k);}
A.k=3B.k=4C.k=2D.k=0
41.下面程序的运行结果是()
main()
{inta,b;
for(a=1,b=1;a<=100;a++)
{if(b>=20)break;
if(b%3==1){b+=3;continue;}
b=-5;}
ptintf(“%d\n”,a);}
A.7B.8C.9D.10
42.下面程序的运行结果是()
main()
{intI,j,x=0;
for(I=0;I<2;I++)
{x++;
for(j=0;j<=3;j++)
{if(j%2)continue;
x++;}
ptintf(“x=%d\n”,x);}
A.x=4B.x=8C.x=6D.x=12
43.下面程序的运行结果是()
main()
{intI;
for(I=1;I<=5;I++)
{if(I%2)printf(“*”);
elsecontinue;
printf(“#”);}
printf(“$\n”);}
A.*#*#*#$B.#*#*#*$C.*#*#$D.#*#*$
44.下面程序的运行结果是()
main()
{intI,j,a=0;
for(I=0;I<2;I++)
{for(j=0;j<4;j++)
if(j%2)break;
a++;}
a++;}
printf(“%d\n”,a);}
A.4B.5C.6D.7
45.下面程序段是从键盘输入的字符中统计数字字符的
个数,用换行符结束循环。
请填空:
intn=0,c;c=getchar();
while()
{if()n++;c=getchar();}
46.当运行以下程序时,从键盘输入right?
,则下
面程序的运行结果是:
#include
main()
{charc;
while((c=getchar()!
=’?
’)putchar(++c);)
47.下面程序的运行结果是:
main()
{inta,s,n,count;
a=2;s=0;n=1;count=1;
while(count<=7){n=n*a;s=s+n;++count;}
printf(“s=%d”,d);}
48.当运行以下程序时,从键盘输入China#,则下面程序的运行结果是:
________________________
#include
main()
{intv1=0,v2=0;charch;
while((ch=getchar()!
=’#’)
switch(ch)
{case‘a’:
case‘h’:
default:
v1++
case‘o’:
v2++;}
printf(“%d,%d\n”,v1,v2);}
49.执行以下程序段以后,K值是:
________________
K=1;n=263;
Do{k*=n%10;n/=10;}while(n);
50.下面程序段中循环体的执行次数是_______________
a=10;b=0;
do{b+=2;a-=2+b;}while(a>0);
51.下面程序段的运行结果是:
______________________
x=2;
do{printf(“*”);x-;}while(!
x==0);
52.下面程序段的运行结果是:
_____________________
I=1;a=0;s=1;
Do{a=a+s*I;s=-s;I++;}while(!
x<=10);
Printf(“a=a%d”,a);
53.当运行以下程序时,从键盘输入12345-1,
则下面程序的行结果是:
____________________________
main()
{intk=0,n;
do{scanf(“%d”,&nn);k+=n;}while(n!
=-1);printf(“k=%dn=%d=n”,kn);}
54.下面程序的运行结果:
_____________________
main()
{intI,x,y;I=x=y=0
do{++I;
If(I%2!
=0){x=x+I;I++;}
Y=y+I++;
}while(I<=7);
printf(“x=%d,y=%d\n”,x,y);}
55.下面程序的运行结果是______________________
main()
{inta,b,I;a=1;b=3;I=1;
do{printf("%d,%d",a,b);
a=(b-a)*2+b;
b=(a-b)*2+a;
if(I++%2==0)printf("\n");
}while(b<100);}
56.当运行以下程序进,从键盘输入-10,则下面程序的运行结果是:
______________________
main()
{inta,b,m,n;m=n=1;
scanf(“%d%d”,&a,&b);
do{if(a>0){m=2*n;b++;}
else{n=m+n;a+=2;b++;}
}while(a==b);
printf(“m=%dn=%d”,m,n);}
57.鸡兔共有30只,脚共有90个,下面程序段是计算鸡兔各有多少只,请填空。
For(x=1;x<=29;x++)
{y=30-x;
if(_______________)printf(“%d,%d\n”,x,y);}
58.下面程序段的运行结果是:
——————————
for(a=1;I=-1;-1<=I<1;I++)
{a++;printf(“%2d”,a);}
peintf(“%2d”,I);
59.若for循环体用以下形式表示:
for(表达式1;表达式2;表达式3)循环体语句
则执行语句for(I=0;I<3;I++)printf(“*”);时,表达式1
执行(______________________)次,表达式3执行(______________________)次。
60.下面程序的功能是计算1-3+5-7+…-99+
100的值,请填空。
Main()
{intI,t=1,s=0;
for(I=1;I<=101;I+=2)
{____________;s=s+t;____________;}
printf(“%d\n”,s);}
61.下面程序的运行结果是:
_________________
main()
{intI,t,sum=0;
for(t=I=1;I<=10;)
{sum+=t;++I;
if(I%3==0)t=-I;
elset=I}
printf(“sum=%d”,sum);}
62.下面程序的运行结果是:
_________________
main()
{intI;
for(I=1;I<=5;I++)
switch(I%2)
{case0:
I++;printf(“#”);break;
case1:
I+=2;printf(“#”)
default:
printf(“\n”);}}
63.下面程序的运行结果是:
_______________
main()
intI,j=4;
for(I=j;I<=2*j;I++)
switch(I%j)
{case0:
case1:
printf(“*”);break;
case2:
printf(“#”);}}
64.若从键盘输入65 14,则下面程序的运行结果是:
__________________
main()
{intm,n;
printf(“Enterm,n:
”);
scanf(“%d%d”,&m,&n);
while(m!
=n)
{while(m>n)m-=n;
while(n>m)n-=m;}
printf(“m=%d\n”,m);}
65.下面程序的运行结果是:
________________
main()
{inty,a;y=2;a=1;
while(y-!
=-1)
{do{a*=y;a++;}while(y--);}
printf(“%d,%d”,a,y);}
66.下面程序的运行结果是:
_______________
main()
{intI.j;
for(I=0;I<=3;I++)
{for(j=0;j<=5;j++)
{if(I==0‖j==0‖I==3‖j==5)printf(“”);
elseprintf(““);}
printf(“\n”);}
}
67.下面程序的运行结果是:
_______________
#include
main()
{intI,j:
for(I=4;I>=4;I--)
{for(j=1;j<=I;j++)putchar(‘#’);.
For(j=1;j<=4-I;j++)putchar(‘*’);
putchar(‘\n’);}
}
68.下面程序的运行结果是:
_______________
main()
{intI,k=0;
for(I=1;;I++)
{k++;
while(k.
{k++;
if(k%3=