ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:20.63KB ,
资源ID:5722675      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5722675.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第五章循环结构习题与答案.docx)为本站会员(b****4)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

第五章循环结构习题与答案.docx

1、第五章循环结构习题与答案第五章 循环结构一、选择题1)下面有关for循环的正确描述是 ) A)for循环只能用于循环次数已经确定的情况 B)for循环是先执行循环体语句,后判断表达式 C)在for循环中,不能用break语句跳出循环体 D)for循环的循环体中,可以包含多条语句,但必须用花括号括起来2)对表达式for表达式1。 。表达式3)可理解为A)for表达式1。0。表达式3)B)for表达式1。1。表达式3)C)for表达式1。表达式1。表达式3)D)for表达式1。表达式3。表达式3)3)以下描述中正确的是 )A)由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不

2、能使用复合语句B)do-while循环由do开始,用while结束,在while表达式)后面不能写分号C)在do-while循环体中,是先执行一次循环,再进行判断D)do-while循环中,根据情况可以省略while4)以下程序段的描述,正确的是。 A)是死循环B)循环执行两次 C)循环执行一次D)有语法错误5)设有以下程序段int x=0,s=0。while(!x!=0s+=+x。printf(%d,s。则 ) A)运行程序段后输出0B)运行程序段后输出1 C)程序段中的控制表达式是非法的 D)程序段执行无限次6)有如下程序#includevoid main( int n=9。 while(

3、n6n-。printf(%d,n。该程序的输出结果是 ) A)987 B)876 C)8765 D)98767)在下列选项中,没有构成死循环的是 )A)int i=100。B)for。)。while1)i=i%100+1。if100)break。 C)int k=10000。D)int s=36;dok+。while10000)。whiles)-s。8)以下程序中循环体总的执行次数是1。i- for(j=0。j A)20B)261C)15D)259)已知int t=0;while t=1).则以下叙述正确的是 )A)循环控制表达式的值为0B)循环控制表达式的值为1C)循环控制表达式不合法D)以

4、上说法都不对10)以下程序的输出结果是 )#includevoid main( int i,j,x=0。 for(i=0。i x+。 for(j=0。j if(j%2continue。 x+。 x+。 printf(x=%dn,x。A)x=4B)x=8C)x=6D)x=1211)下列说法正确的是 )int i,x。for(i=0,x=0。iscanf(%d,x。A)最多的执行10次B)最多执行9次C)是无限循环D)循环体一次也不执行12)下面程序的运行结果是 )#include void main( int y=10。 doy-。while(-y。 printf(%dn,y-。 A)-1 B)

5、1 C)8 D)013)以下程序的输出结果是 )#includevoid main( int a,i。a=0。 for(i=1。i switch(i case 0: case 3:a+=2。 case 1: case 2:a+=3。 default:a+=5。 printf(%dn,a。 A)31 B)13 C)10 D)2014)下面程序的功能是将从键盘输入的一对数,由小到大排序输出,当输入一对相等数时结束循环,在划线处应填入的语句是 )b5E2RGbCAP#include void main( int a,b,t。 scanf(%d%d,&a,&b。 while(_ if(ab t=a。a

6、=b。b=t。 printf(%d%dn,a,b。 scanf(%d%d,&a,&b。 A)!a=b B)a!=b C)a=b D)a=b15)下面程序的运行结果是 )#include void main( int a=1,b=10。 do b-=a。a+。while(b-。 printf(a=%d,b=%dn,a,b。 A)a=3,b=11 B)a=2,b=8 C)a=1,b=-1 D)a=4,b=9二、填空题1)该程序的功能是:统计所有小于等于x2)的素数的个数,例如,输入x=20,结果:2,3,5,7,11,13,17,19。p1EanqFDPw请在程序的下划线处填入正确的内容并把下划线

7、删除,使程序得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!#includevoid main( int x,i,j,count=0。scanf(“%d”,&x。for(i=2。i for(_1_。j if(_2_%j=0 break。 if(_3_=i count+。 printf(count%15 ? %5d : n%5d,i。 printf(nThe number of prime is : %dn,count。2 )该程序的功能是:计算n!,即1*2*3*4*n请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!

8、#includevoid main( int n,i。 int s=_1_。 scanf(%d,&n。 for(i=1。i s=s*_3_。 printf(%d,s。3) 该程序的功能是:统计个位数是5,且能被7整除的四位数及其个数。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。DXDiTa9E3d注意:不得增行或删行,也不得更改程序的结构!#includevoid main( int i,n=_1_。 for(i=1000。i if(i_2_=5 & i%7=0 n+。 printf(%dn,i。 printf(个数为%d,_3_。4) 该程序的功能是:百马拉百砖。用

9、100匹马拉100块砖,红马拉3块,黑马拉2块,白马两匹拉1块,在红马、黑马和白马不可缺少的情况下,共有几种拉法?请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。RTCrpUDGiT注意:不得增行或删行,也不得更改程序的结构!#includevoid main( intr,b,w,sum=0。for(r=1。r for(b=1。b w=_1_。 if(w_2_2=0 & w0 sum+。 printf(%d %d %dn,r,b,w。 printf(nsum=%dn,_3_。5) 该程序的功能是:在屏幕上打印如下两个图形,要求图形2的第一行的“*”在第40列输出。请在程序

10、的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。5PCzVD7HxA注意:不得增行或删行,也不得更改程序的结构!* * * * * * * * 图形1 图形2图形1程序:#includevoid main( int i,j。 for(i=1。i for(j=1。j printf(_3_。 printf(n。 图形2程序:#includevoid main( int i,j,k。 for(i=1。i for(k=1。k printf( 。 for(j=1。j printf(*。 printf(_3_。 6) 该程序的功能是:求出1000以内的所有完全数。若一个数恰好等于它的因子之和

11、除自身外),则称该数为完全数,例如:6=1+2+3,故6是完全数。请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。jLBHrnAILg注意:不得增行或删行,也不得更改程序的结构!#includevoid main(int i,j,t。 for(i=1。i t=_1_。 for(j=1。j if(_2_=0 t=t+j。 if(_3_=i printf(%6d,i。 三、改错题1)下列给定程序的功能是:求三个数的最小公倍数。例如,给变量a、b、c分别输入15、11、2,则输出结果应当是330。xHAQX74J0X请改正程序中的错误,使其能得到正确的结果。注意:不要改动mai

12、n函数,不能增行或删行,也不得更改程序的结构。#include void main( int a,b,c,i, temp,n,m。 printf(Input a b c: 。 scanf(%d%d%d,&a,&b,&c。 printf(a=%d,b=%d,c=%d n,a,b,c。/*found*/ i=1。 temp=m=n=1。 /*found*/ while(temp!=0 & m!=0 & n!=0 i=i+1。 temp=i%a。 m=i%b。 n=i%c。 printf(The minimal common multipleis:%dn,i。2)下列给定程序的功能是:计算正整数nu

13、m的各位上的数字之积。例如,若输入252,则输出应该是20;若输入202,则输出应该是0。请改正程序中的错误,使其能得出正确的结果。注意:不得增行或删行,也不得更改程序的结构!#include void main(/*found*/ long n, k。 printf(Please enter a number:。 scanf(%ld,&n。 do k*=n%10 。/*found*/n=10。 while(n。 printf(n%ldn,k。3) 下列给定程序的功能是:计算1到100之间是8的倍数的数值之和。请改正程序中的错误,使其能得出正确的结果。LDAYtRyKfE注意:不得增行或删行,

14、也不得更改程序的结构!#includevoid main( int i。/*found*/ int sum=1。 for(i=1。i/*found*/ if(i/8=0 sum=sum+i。/*found*/ printf(%f,sum。4) 下列给定程序的功能是:利用下面公式求的近似值:请改正程序中的错误,使其能得出正确的结果。2/6=1/12+1/22+1/32+1/42+,直到某项绝对值不大于10-12为止。#include#includevoid main( double n,sum=0,pa,cj。/*found*/ n=0。 while(1/(n*npow(10,-12/*foun

15、d*/ sum=1/(n*n。 n+。 /*found*/ cj=sum。 pa=sqrt(cj。 printf(%f,pa。5) 下列给定程序的功能是:求两个整数的最大公约数。请改正程序中的错误,使其能得出正确的结果。求法:拿一个整数去除另一个整数取余,然后拿被除数去除以余数,直到余数为0,此时的被除数即为最大公约数。Zzz6ZB2Ltk#includevoid main( int m,n, r。 printf(请输入两个整数m,n:。/*found*/ scanf(%d %d,m,n。/*found*/ r=m/n。 while(r!=0 m=n。/*found*/ n=m。 r=m%n。

16、 printf(最大公约数是:%d,n。6) 下列给定程序的功能是:统计从键盘上输入的字符中大写字母、小写字母、数字字符、其它字符的个数,用换行符结束循环。请改正程序中的错误,使其能得出正确的结果。#includedvzfvkwMI1void main( int dx=0,xx=0,sz=0,qt=0。 char ch。 scanf(%c,&ch。 while(ch!=n /*found*/ for(ch=65 & ch dx+。/*found*/ else if(ch=97 & ch xx+。 else if(ch=48 & ch sz+。 else qt+。/*found*/ printf

17、(%c,&ch。 printf(%d %d %d %d,dx,xx,sz,qt。四、编程题1)根据以下公式计算S:S=1+1/(1+2+1/(1+2+3+1/(1+2+3+n例如:若n的值为11时,函数的值为:1.833333。rqyn14ZNXI2) 编写程序,其功能是:输出1到1000之间所有的同构数,所谓同构数指一个数出现在它的平方数的右边,如5的平方是25,5出现在25的右边,25的平方是625,25出现有625的右边,因此5和25都是同构数。EmxvxOtOco3) 编写程序,其功能是: 求100999之间的水仙花数。所谓“水仙花数”是指一个数,其各位数字立方和等于该数本身。例如15

18、3就是一水仙花数。SixE2yXPq54) 编写程序,其功能是:编写程序,其功能是:求fibonacci数列的前20项。第一项和第二项都是1,从第三项开始往后每一项都是相邻的前两项之和,如:1,1,2,3,5,8,136ewMyirQFL5) 编写程序,其功能是:猴子吃桃问题。猴子第一天摘下若干个桃子,立即吃了一半,还不过瘾又多吃了一个,第二天将第一天剩下的桃子吃了一半又多吃了一个,以后每天以这个规律吃下去,到第十天再去吃时发现只剩下一个桃子,问猴子第一天摘了多少个桃子。kavU42VRUs第五章循环结构答案一、选择题1)D 2)B 3)C 4)C 5)B6)B 7)D 8)A 9)B 10)

19、B11)A 12)D 13)A 14)B 15)B二、填空题1、j=2ij2、 1 n i3、0 %10n4、(100-3*r-2*b/2。 %sum5、图形1:5 2*i-1*图形2:41-i 2*i-1n6、0 i%jt三、改错题1、将i=1。改为:i=0。将while(temp!=0 & m!=0 & n!=0改为:while(temp!=0 | m!=0 | n!=0y6v3ALoS892、将long k。改为:long k=1。或long k。k=1。将n=10。改为:n/=10。3、将int sum=1。改为:int sum=0。将if(i/8=0 sum=sum+i。改为:nif

20、(i%8=0 sum=sum+i。将printf(%f,sum。 改为: printf(%d,sum。4、将 n=0。改为: n=1。将sum=1/(n*n。改为:sum+=1.0/(n*n。将 cj=sum。改为: cj=6*sum。5、将 scanf(%d %d,m, n。改为: scanf(%d %d,&m,&n。将r=m/n。改为: r=m%n。将n=m。改为:n=r。6、将 for(ch=65 & ch dx+。改为: if(ch=65 & ch dx+。M2ub6vSTnP将(ch=97 & ch 改为: (ch=97 & ch 将printf(%c,&ch。改为: scanf(%

21、c,&ch。四、编程题 1、#include main( int n。int t=0, k。 float s=0.0。 printf(nPlease enter N:。 scanf(%d, &n。for(k=1。 k t+=k。 s+=1.0/t。 printf(the result is: %fn, s。2、方法一:#includevoid main( int i,m。 for(i=1。i m=i*i。 if(m%10=i | m%100=i | m%1000=i printf(%6d,i。 方法二:#includevoid main(int i,m,n。 for(i=1。i m=i*i。

22、n=i。 while(n!=0 if(n%10=m%10 n=n/10。 m=m/10。 else break。 if(n=0 printf(%6d,i。3、方法一:#includevoid main(int i。 int a,b,c。 for(i=100。i a=i%10。 b=(i/10%10。 c=i/100。 if(i=a*a*a+b*b*b+c*c*c printf(%6d,i。 方法二:#includevoid main(int i,g,m。 int sum。 for(i=100。i m=i。 sum=0。 while(m!=0 g=m%10。 m=m/10。 sum=sum+g*

23、g*g。 if(sum=i printf(%6d,i。 4、方法一:#includevoid main( int i,f1,f2,f。 f1=1。 f2=1。 printf(%10d%10d,f1,f2。 for(i=3。i f=f1+f2。 printf(%10d,f。 f1=f2。 f2=f。 方法二:#includevoid main( int i,f1,f2。 f1=1。 f2=1。 printf(%10d%10d,f1,f2。 for(i=1。i f1=f1+f2。 f2=f1+f2。 printf(%10d%10d,f1,f2。 5、#includevoid main( int i,n。 n=1。 for(i=9。i=1。i- n=(n+1*2。 printf(桃子个数为:%d,n。申明:所有资料为本人收集整理,仅限个人学习使用,勿做商业用途。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2