C语言循环结构选择题Word格式.docx
《C语言循环结构选择题Word格式.docx》由会员分享,可在线阅读,更多相关《C语言循环结构选择题Word格式.docx(46页珍藏版)》请在冰点文库上搜索。
*"
A)5B)4
C)6D)1
9、t为int型,进入下面的循环之前,t的值为0
while(t=1){……}
则以下叙述中正确的是
A)循环控制表达式的值为0B)循环控制表达式的值为1
C)循环控制表达式不合法D)以上说法都不对
10、有以下程序段
intk=0;
while(k=1)k++;
while循环执行的次数是
A)无限次B)有语法错,不能执行
C)一次也不执行D)执行一次
11、C语言用()表示逻辑"
真"
值。
A)trueB)t或y
C)1D)0
12、语句while(!
e);
中的条件!
e等价于()。
A)e==0B)e!
=1
C)e!
=0D)~e
13、以下for循环是()。
for(x=0,y=0;
(y!
=123)&
&
(x<
4);
x++)
A)无限循环B)循环次数不定
C)执行4次D)执行3次
14、对于for(表达式1;
;
表达式3)可理解为()。
A)for(表达式1;
0;
表达式3)
B)for(表达式1;
1;
C)for(表达式1;
表达式1;
D)for(表达式1;
表达式3;
15、C语言中while和do-while循环的主要区别是()。
A)do-while的循环体至少无条件执行一次
B)while的循环控制条件比do-while的循环控制条件严格
C)do-while允许从外部转到循环体内
D)do-while的循环体不能是复合语句
16、下面关于for循环的正确描述是()。
A)for循环只能用于循环次数已经确定的情况
B)for循环的循环体可以是一个复合语句
C)在for循环中,不能用break语句跳出循环体
D)for循环的循环体不能是一个空语句
17、若i为整型变量,则以下循环语句的循环次数是()。
for(i=2;
i==0;
)
printf("
%d"
i--);
A)无限次B)0次
C)1次D)2次
18、以下叙述正确的是()。
A)continue语句的作用是结束整个循环的执行
B)只能在循环体内和switch语句体内使用break语句
C)在循环体内使用break语句或continue语句的作用相同
D)从多层循环嵌套中退出时,只能使用goto语句
19、对下面程序段,描述正确的是()。
for(t=1;
t<
=100;
t++)
{scanf("
&
x);
if(x<
0)continue;
t);
}
A)当x<
0时,整个循环结束
B)当x>
=0时,什么也不输出
C)printf函数永远也不执行
D)最多允许输出100个非负整数
20、对下面程序段叙述的正确的是()。
while(k=0)k=k-1;
A)while循环执行10次B)无限循环
C)循环体一次也不被执行D)循环体被执行一次
21、若i,j已定义成int型,则以下程序段中内循环体的总
执行次数是()。
for(i=3;
for(j=0;
2;
j++)
for(k=0;
k<
=2;
k++)
{......}
A)18B)27
C)36D)30
22、下面程序段中,循环体的执行次数是()。
inta=10,b=0;
do{b+=2;
a-=2+b;
}while(a>
=0);
A)4B)5
C)3D)2
23、在下列选项中,没有构成死循环的程序段是
A)inti=100;
while
(1)
{i=i%100+1;
if(i>
100)break;
B)for(;
;
);
C)intk=1000;
do{++k;
}while(k>
=1000);
D)ints=36;
while(s)--s;
24、请读程序:
#include<
stdio.h>
main()
{inta,b;
for(a=1,b=1;
a<
a++)
{if(b>
=20)break;
if(b%3==1)
{b+=3;
continue;
b-=5;
a);
上面程序的输出结果是
A)7B)8
C)9D)10
25、以下程序的输出结果是
=10)break;
if(b%5==1){b+=5;
}}
A)101B)6
C)4D)3
26、若x是int型变量,且有下面的程序片段:
for(x=3;
x<
6;
printf((x%2)?
("
**%d"
):
##%d\n"
),x);
上面程序片段的输出结果是
A)**3B)##3
##4**4
**5##5
C)##3D)**3##4
**4##5**5
27、以下程序的输出结果是()。
main()
{
inti;
for(i=1;
=5;
i++)
if(i%2)
elsecontinue;
#"
$\n"
A)***#$B)#*#*#*$
C)*#*#*#$D)**#*$
28、下面程序的输出结果是()。
{inti;
{if(i%2)printf("
A)*#*#*#$B)#*#*#*$
C)#*#*$D)*#*#$
29、以下程序段的输出结果是()。
intk,j,s;
for(k=2;
k++,k++)
{s=1;
for(j=k;
s+=j;
}
s);
A)1B)9
C)11D)10
定义如下变量:
intn=10;
则下列循环的输出结果是()。
while(n>
7)
{n--;
n);
A)10B)9C)10D)9
9898
8787
76
31、下面程序的输出结果是()。
{intx=3;
do{
%d"
x-=2);
}while(!
(--x));
A)1B)1-2
C)30D)是死循环
32、下面程序的输出结果是()。
{inty=9;
for(;
y>
y--)
{if(y%3==0)
{printf("
--y);
A)741B)852
C)963D)875421
33、以下程序段的输出结果是()。
intk,n,m;
n=10;
m=1;
k=1;
while(k<
=n){m*=2;
k+=4;
m);
A)4B)16
C)8D)32
34、若有以下程序段,w和k都是整型变量:
w=k;
LB:
if(w==0)gotoLE;
w--;
gotoLB;
LE:
则不能与上面程序段等价的循环语句是
A)for(w=k;
w!
=0;
w--)B)w=k;
while(w--!
=0)
w++;
C)w=k;
do{w--;
D)for(w=k;
w;
--w)
}while(w!
=0)printf("
35、设有如下程序段:
inti=0,sum=1;
do
{sum+=i++;
while(i<
6);
sum);
上述程序段的输出结果是()。
A)11B)16
C)22D)15
36、执行下面程序后sum的值是()。
{inti,sum=0;
sum+=i;
sum);
A)15B)14
C)不确定D)0
37、以下程序的输出结果是()。
{intcount,i=0;
for(count=1;
count<
=4;
count++)
{i+=2;
i);
A)20B)246
C)2468D)2222
38、下面程序的输出结果是()。
{unsignedintnum,k;
num=26;
k*=num%10;
num/=10;
}while(num);
k);
A)2B)12
C)60D)18
39、下面函数的功能是根据以下的公式,返回满足精度∈要求的π值,请填空。
π 1121231234
—=1+—+——+———+————+……
23353573579
{doubleesp,s=0.0,t=1.0;
intn;
scanf("
%f"
esp);
for(_________;
t>
esp;
n++)
{__________;
t=n*t/(2*n+1);
s=2*s;
s=%f\n"
A)n=1B)t=1
s+=ts=s/t
C)t=1D)n=1.0
s=s+tt+=s
40、运行下面的程序,如果从键盘上分别输入6和4,则输出结果是()。
{inti,x;
if(x++>
5)printf("
x);
elseprintf("
x--);
A)7和5B)6和3
C)7和4D)6和4
41、阅读以下程序:
{intx;
for(x=5;
x>
x--)
if(x--<
%d,"
x++);
程序运行后的输出结果是()。
A)4,3,1B)4,3,1,
C)5,4,2D)5,3,1,
42、以下程序的功能是:
从键盘上输入若干个学生的成绩,统计并输出
最高成绩和最低成绩,当输入负数时结束输入。
请填空。
{floatx,amax,amin;
amax=x;
amin=x;
while(________)
{if(x>
amax)amax=x;
if(______)amin=x;
\namax=%f\namin=%f\n"
amax,amin);
A)x<
=0B)x>
x>
aminx<
=amin
C)x>
0D)x>
=0
amin
43、下面程序是计算n个数的平均值,请填空。
{inti,n;
floatx,avg=0.0;
n);
n;
avg=avg+______;
avg=________;
avg=%f\n"
avg);
A)iB)x
avg/iavg/n
C)xD)i
avg/xavg/n
44、下面程序的输出结果是()。
inti,k=0,a=0,b=0;
{k++;
if(k%2==0){a=a+k;
b=b+k;
a=a+k;
k=%da=%db=%d\n"
k,a,b);
A)k=5a=10b=4B)k=3a=6b=4
C)k=4a=10b=3D)k=4a=10b=4
45、以下程序段的执行结果是()。
inti,j,m=0;
=15;
i+=4)
for(j=3;
=19;
j+=4)
m++;
A)12B)15
C)20D)25
46、下面程序的输出结果是()。
{intx,i;
=50;
{x=i;
if(++x%2==0)
if(x%3==0)
if(x%7==0)
A)28B)27
C)42D)41
47、在执行以下程序时,如果从键盘上输入:
ABCdef<
,
则输出为
{charch;
while((ch=getchar())!
='
\n'
{if(ch>
A'
&
ch<
Z'
)ch=ch+32;
elseif(ch>
a'
'
z'
)ch=ch-32;
%c"
ch);
\n"
A)ABCdefB)abcDEF
C)abcD)DEF
48、执行以下程序后,输出的结果是()。
{inty=10;
do{y--;
while(--y);
,y--);
A)-1B)1
C)8 D)0
49、运行以下程序后,如果从键盘上输入:
6514<
则输出结果为
{intm,n;
Enterm,n:
"
%d%d"
m,&
while(m!
=n)
{while(m>
n)m-=n;
while(n>
m)n-=m;
m=%d\n"
A)m=3B)m=2
C)m=1D)m=0
50、下面程序的输出结果是()。
{intx=10,y=10,i;
8;
y=++i)
%d%d"
x--,y);
A)10192B)9876
C)10990D)101091
51、下面程序的输出结果是()。
{intn=4;
while(n--)printf("
n--);
A)20B)31
C)321D)210
52、下面程序的输出结果是()。
{if(i%2){printf("
continue;
A)#*#*#B)#####
C)*****D)*#*#*
53、以下循环体的执行次数是
{inti,j;
for(i=0,j=1;
i<
=j+1;
i+=2,j--)
%d\n"
A)3B)2
54、以下程序段的执行结果是
inta,y;
a=10;
y=0;
{a+=2;
y+=a;
a=%dy=%d\n"
a,y);
if(y>
20)break;
}while(a=14);
.
A)a=12y=12B)a=12y=12C)a=12y=12D)a=12y=12
a=14y=16a=16y=28a=14y=26
a=16y=20a=14y=44
a=18y=24
55、有如下程序
=3;
sum++)sum+=i;
该程序的执行结果是
A)6B)3
C)死循环D)0
56、有如下程序
{intx=23;
{printf("
while(!
A)321B)23
C)不输出任何内容D)陷入死循环
57、有如下程序
{intn=9;
6){n--;
该程序段的输出结果是
A)987B)876
C)8765D)9876
58、函数pi的功能是根据以下近似公式求π值:
(π*π)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)
请填空,完成求π的功能。
math.h>
{doubles=0.0;
longinti,n;
%ld"
=n;
s=s+_______;
s=(sqrt(6*s));
s=%e"
A)1/i*iB)1.0/i*i
C)1.0/(i*i)D)1.0/(n*n)
59、以下程序运行后的输出结果是()。
{inti=10,j=0;
{j=j+1;
i--;
while(i>
2);
j);
A)50B)52
C)51D)8
60、设有以下程序
{intn1,n2;
n2);
while(n2!
{n1=n2%10;
n2=n2/10;
n1);
程序运行后,如果从键盘上输入1298,则输出结果为()。
A)892B)8921
C)89D)921
61、以下函数的功能是:
求x的y次方,请填空。
{inti,x,y;
doublez;
%d%d"
x,&
y);
for(i=1,z=x;
y;
z=z*______;
x^y=%e\n"
z);
A)i++B)x++
62、下面程序的运行结果是()。
if((i*i>
=150)&
(i*i<
=200))
break;
i*i);
A)144B)255
C)169D)121
63、下面程序的运行结果是()。
a=-1;
b=0;
++a;
b+=a;
}while(a<
9);
b);
A)34B)24
C)26D)25
64、执行下面程序段后,k的值是