C语言程序设计习题集第4章循环结构答案Word格式.docx

上传人:b****5 文档编号:20714723 上传时间:2023-01-25 格式:DOCX 页数:15 大小:21.86KB
下载 相关 举报
C语言程序设计习题集第4章循环结构答案Word格式.docx_第1页
第1页 / 共15页
C语言程序设计习题集第4章循环结构答案Word格式.docx_第2页
第2页 / 共15页
C语言程序设计习题集第4章循环结构答案Word格式.docx_第3页
第3页 / 共15页
C语言程序设计习题集第4章循环结构答案Word格式.docx_第4页
第4页 / 共15页
C语言程序设计习题集第4章循环结构答案Word格式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

C语言程序设计习题集第4章循环结构答案Word格式.docx

《C语言程序设计习题集第4章循环结构答案Word格式.docx》由会员分享,可在线阅读,更多相关《C语言程序设计习题集第4章循环结构答案Word格式.docx(15页珍藏版)》请在冰豆网上搜索。

C语言程序设计习题集第4章循环结构答案Word格式.docx

A)1B)1

22

33

4

8、有以下程序,若运行时输入main()

{floatx,y,z;

scanf(“%f%f”,&

x,&

y);

z=x/y;

while

(1){

if(fabs(z)>

1.0)

x=y;

y=z;

}else

break;

printf(“n%”f,y);

A)1.500000B)1.6000009、执行以下程序段时

x=-1;

do

{x=x*x;

}while(!

x);

则下面描述正确的是(A)

A)循环体将执行一次

C)循环体将执行无限次

10、有以下程序段其输出结果是intx=3;

{printf("

%d"

x-=2);

}

while(!

(--x));

A)1B)30C)1-2D)

11、有如下程序main(){intx=23;

C)1D)l

2

3.62.4<

回车>

,则输出的结果是

C)2.000000D)2.400000

B)循环体将执行两次

D)系统将提示有语法错误

(C)

死循环

(B)。

 

printf(“%d”,x);

x--;

}while(!

x);

}该程序的执行结果是(B)

A)321B)23C)不输出任何内容D)陷入死循环

12、有以下程序段

intn=0,p;

do{scanf(“%d”,&

p);

n++;

}while(p!

=12345&

&

n<

3);

此处do—while循环的结束条件是(D)A)P的值不等于12345并且n的值小于3

B)P的值等于12345并且n的值大于等于3

C)P的值不等于12345或者n的值小于3D)P的值等于12345或者n的值大于等于313、以下不构成无限循环的语句或语句组是(A)A)n=0;

do{++n;

}while(n<

0);

B)n=0;

while

(1){n++;

C)n=10;

while(n);

{n--;

D)for(n=0,i=1;

;

i++)n+=i;

14、若i为整型变量,则以下循环执行的次数是(B)for(i=2;

i==0;

)printf(“%-d-”);

i

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

15、执行语句for(i=1;

i++<

4;

)后,变量i的值是(C)A)3B)4C)5D)不定

16、有以下程序main(){

inty=9;

for(;

y>

0;

y--)if(y%3==0)printf("

--y);

}程序的运行结果是(C)A)741B)963C)852D)875421

17、以下程序执行后sum的值是(C)

A)15B)14C)不确定D)0main()

{inti,sum;

for(i=1;

i<

6;

i++)sum+=i;

printf(“n%”d,sum);

18、有如下程序

main()

{inti,sum=0;

for(i=1;

=3;

sum++)sum+=i;

printf(“%n”d,sum);

该程序的执行结果是(C)

A)6B)3C)死循环D)0

19、执行语句for(i=3;

i>

0;

i--);

i--;

后,变量i的值是(C)A)0B)10C)-1D)1

20、执行下面程序片段的结果是(A)。

intx;

for(x=3;

x<

x++)

printf((x%2)?

(“**%d”):

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

A)**3##4B)##3

**5**4##5

D)

**3##4

##5

21、有以下程序,执行后输出的结果是(A)。

main(){inti;

for(i=0;

3;

i++)switch(i)

{case1:

printf("

i);

case2:

default:

A)011122B)012C)012020D)120

22、有以下程序,程序运行后的输出结果是(C)。

{intk=4,n=0;

n<

k;

{n++;

if(n%3!

=0)continue;

k--;

printf("

%d,%d\n"

k,n);

A)1,1B)2,2C)3,3D)4,4

23、设变量已正确定义,则以下能正确计算f=n!

的程序段是(D)A)f=0;

=n;

i++)f*=i;

B)f=1;

n;

i++)f=f*i;

C)f=1;

for(i=n;

1;

D)f=1;

=2;

i--)f*=i;

24、执行下面程序片段的结果是(B)。

{inta,b;

for(a=1,b=1;

a<

=100;

a++)

if(b>

=20)break;

if(b%3==1)

b+=3;

continue;

b-=5;

printf(“%n”d,a);

A)7B)8C)9D)10

25、以下程序的输出结果是(B)。

{inti=0,a=0;

20)

{for(;

;

{if((i%10)==0)break;

elsei--;

i+=11;

a+=i;

%d\n"

a);

A)21B)32C)33D)11

26、以下程序的输出结果是(A)main()

{inti,j,x=0;

2;

i++)

{x++;

for(j=0;

j<

j++)

{if(j%2)continue;

x++;

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

}A)x=4B)x=8C)x=6D)x=12

27、有以下程序

inti,j;

for(i=3;

=1;

i--)

for(j=1;

j++)printf("

i+j);

\n"

);

程序的运行结果是(D)

A)234B)432C)23

34554334

45

28、有以下程序

{inti=5;

if(i%3==1)

if(i%5==2)

*%d"

break;

i++;

}while(i!

=0);

\n"

);

程序的运行结果是(A)

A)*7B)*3*5C)*5

29、以下程序的结果是(A)

{intn;

for(n=1;

{if(++n%2==0)continue;

if(++n%3==0)break;

n=%d"

n);

A)n=6B)n=5C)n=4D)死循环

30

D)45

34

23

D)*2*6

、以下叙述中正确的是(C)

A)break语句只能用于switch语句题中

B)continue语句的作用是:

使程序的执行流程跳出包含它的所有循环

C)break语句只能用在循环体内和switch语句体内

D)在循环体内使用break语句和continue语句的作用相同

二、程序阅读题(共10题)

1、以下程序运行后的输出结果是52。

main()

inti=10,j=0;

{j=j+i;

i--;

}while(i>

2);

printf(“%”,j);

2、设有以下程序:

intn1,n2;

scanf(“%d,&

n2);

while(n2!

=0)

n仁n2%10;

n2=n2/10;

printf(“%d'

n1);

8921

程序运行后,如果从键盘上输入1298;

则输出结果为

3、以下程序的输岀结果是5。

{ints,i;

for(s=0,i=1;

i++,s+=i);

printf("

s);

4、阅读下面程序,程序的结果是2,1,0。

{inti=7;

for(i=2;

printf(”%d”i);

printf(”%c”i);

5、阅读下面程序,程序的结果是14,4。

main()

{inti,j,m=0;

=10;

i+=4)for(j=3;

=4;

j++)

{m++;

%d,%d"

i,m);

6、阅读下面程序,程序的结果是1978。

{intj,a=2,n=4;

longs=O,t=O;

n;

t=t*1O+a;

s=t;

n_1;

{t=t/10;

s=s-t;

printf(”%d,s);

7、以下程序运行后的输出结果是0918273645

charc1,c2;

for(c仁'

0'

c2='

9'

c1<

c2;

c1++,c2--)

%c%c"

c1,c2);

8、以下程序的输出结果是_5_。

ints,i;

9、执行以下程序后,输出#号的个数是6。

{inti,j;

i<

5;

i++)

for(j=2;

j<

=i;

j++)putchar('

#'

10、以下程序的输出结果是x=4

{if(j%2)continue;

printf(“x=%dn”,x);

三、程序填空题

1、以下程序的功能是计算:

m=1-2+3-4+…+9-10,并输出结果。

请填空。

{intm=0,f=1,i,n;

scanf(“%d,&

n);

{m+=i*f;

f=-f;

printf(“m=%'

d,m)

2、以下程序的功能是计算s=1+1/2!

+1/3!

+1/4!

+…+1/n!

,请填空。

doubles=0.0,fac=1.0;

inti;

intn;

for(i=1,i<

=n;

{fac=fac*1.0/i;

s=s+fac;

printf(“s=%lf”,s);

3、以下程序的功能是计算:

s=1+12+123+1234+12345。

{intt=0,s=0,i;

for(i=1;

=5;

{t=i+t*10;

s=s+t;

s=%d\n"

4、要使以下程序段输出10个整数,请填入一个整数。

=18;

printf("

%”,i+=2));

5、以下函数的功能是:

求x的y次方,请填空。

doublefun(doublex,inty)

{inti;

doublez;

for(i=1,z=x;

y;

i++)z=z*y;

returnz;

6、以下程序的功能是根据以下近似公式求n值:

(n*n)/6=1+1/(2*2)+1/(3*3)+..+1/(n*n)

现在请你在下面的函数中填空,完成求n的功能。

main(){

doubles=0.0;

longi,n;

scanf(“%ld”,&

i++)s=s+1.0/(i*i);

printf(“%lf”,sqrt(6*s));

7、以下用来输出两整数M和N之间的所有素数(质数),请填空,使程序能正确运行。

#defineM4

#defineN30

inti,j,k,s=0;

for(i=M;

=N;

{for(j=2;

_J—;

j++)

if(i%j==0)break;

if(j>

=i)

{printf("

%5d"

i);

s=s+1;

if(s%5==0)printf("

8、以下程序实现:

从键盘输入一位整数,计算其各位数字之和。

比如输入整数31421,则

打印结果为11。

inti,sum=O,a;

scanf("

&

i);

while(i>

0){

a=i%10;

sum+=a;

i=i/10;

sum);

9、以下程序实现:

计算1~10之间(不含10)的奇数之和以及偶数之和

inta,b,i;

a=b=O;

10;

i+=2)

a=a+i:

b=b+i+1:

偶数为:

%d,奇数和为:

a,b);

10、以下程序的功能是:

输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。

10;

i++){

j=i*10+6;

if(j%3==0)continue;

printf(“%d”,j);

四、编程题

m,输出1至Um(含m)能被7或11

m为50,则程序输出7、11、14、

5。

1、写一个程序,程序的功能是:

从键盘输入一个整数整除的所有整数,并计算出这些数的个数。

例如:

如果

21、22、28、33、35、42、44、49共11个数。

2、计算100到1000间有多少个数其各位数字之和是

3、从键盘输入整数n,输出1+3+5+7+…前n项的和(输入的*=10)

4、编写程序,实现如下图形12

123

123412345

5、打印100-999以内所有满足条件的数。

条件为,这个数等于其个位数,十位数,百位数立方和,如153=1*1*1+5*5*5+3*3*3

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

当前位置:首页 > 表格模板 > 表格类模板

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

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