河南理工大学C语言第五章课后习题答案(精品).ppt

上传人:s****8 文档编号:67634401 上传时间:2022-12-26 格式:PPT 页数:45 大小:1.96MB
返回 下载 相关 举报
河南理工大学C语言第五章课后习题答案(精品).ppt_第1页
第1页 / 共45页
河南理工大学C语言第五章课后习题答案(精品).ppt_第2页
第2页 / 共45页
点击查看更多>>
资源描述

《河南理工大学C语言第五章课后习题答案(精品).ppt》由会员分享,可在线阅读,更多相关《河南理工大学C语言第五章课后习题答案(精品).ppt(45页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(1)下面这个程序的输出是下面这个程序的输出是#include main()int y=10;while(y-);printf(“y=%dn”,y);A.y=0B.while构成死循环构成死循环C.y=1D.y=-1D循环序号循环序号y-逻辑值逻辑值y110真929真838真747真656真565真474真383真292真1101真0110假-1第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(2)循环语句循环语句while(!E);中的表达式中的表达式!E等价于等价于A.E!=0B.E!=1C.E=0D.E=1(3)

2、以下程序执行后的输出结果是以下程序执行后的输出结果是main()int x=0,y=0;while(x20)x+=3,y+;printf(“%d,%dn”,y,x);A.7,21 B.8,24 C.1,21 D.21,7CA循环序号循环序号xy1312623934124515561867217第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(4)假定假定a和和b为为int型变量,则执行以下语句后型变量,则执行以下语句后b的值为的值为 a=1;b=10;do b-=a;a+;while(b-0);A.9B.-2C.-1D.8(5)若若“int a=5;”则执行以下语句后,打印的结果

3、是则执行以下语句后,打印的结果是 do printf(“%2dn”,a-);while(!a)A.5 B.不打印任何内容不打印任何内容 C.4 D.陷入死循环陷入死循环DA循环序号循环序号b-b-0bba19229假8循环序号循环序号!aa-a1542假假1.选择题选择题(6)循环循环“for(i=0,j=5;+i!=-j;)printf(“%d%d”,i,j);”将执行将执行A.6次次B.3次次C.0次次D.无限次无限次(7)以下程序执行后的输出结果是以下程序执行后的输出结果是main()int i,sum;for(i=0,sum=0;i100;)sum+=i;i+;printf(“%d,%

4、dn”,i,sum);A.101,5050 B.100,5050 C.99,5050 D.无限循环,不会正常结束无限循环,不会正常结束第五章第五章 循环结构程序设计循环结构程序设计DD序号序号i=0j=5+i-j10514214233233243241.第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(8)设有设有“int x,y;”,则以下,则以下for循环执行的次数为循环执行的次数为 for(x=0,y=0;(y!=123)&(x4);x+);A.3B.4C.不定不定D.无限循环无限循环(9)以下程序执行后的输出结果是以下程序执行后的输出结果是 main()int i;for

5、(i=0;i10;i+);printf(“%d”,i);A.0B.123456789C.0123456789D.10DB第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(10)以下程序的输出结果表明是以下程序的输出结果表明是 main()int i;for(i=A;iI;i+,i+)printf(“%c”,i+32);printf(“n”);A.编译不通过,无输出编译不通过,无输出B.acegC.acegiD.abcdefghiB相当于i=i+2将大写字母转换为小写字母第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(11)以下叙述错误的是以下叙述错误的是A.使用使

6、用while和和do-while循环时,循环变量初始化的操作应在循循环时,循环变量初始化的操作应在循环语句之前完成环语句之前完成B.while循环是先判断表达式,后执行循环体语句循环是先判断表达式,后执行循环体语句C.do-while和和for循环均是先执行循环体语句,后判断表达式循环均是先执行循环体语句,后判断表达式D.for、while和和do-while循环中的循环体均可以由空语句构成循环中的循环体均可以由空语句构成C第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(12)下列程序是求下列程序是求1100的累加和,其中有三个不能够完成规定的累加和,其中有三个不能够完成规定的

7、功能,只有一个能正确完成累加和的功能,只有一个能正确完成累加和A.s=0;i=0;while(i=100)s+=i+;B.s=0;i=1;while(i+100)s+=i;C.s=0;i=0;while(i100)s+=i+;D.s=0;i=1;while(+i=100)s+=i;相当于:相当于:1+2+3+99+100=5050相当于相当于1+2+3+99+=4950相当于:相当于:2+3+4+99+100=5049相当于:相当于:2+3+4+99+100=5049i=1改为改为i=0s=5050i100改为改为i=100s=5050i=1改为改为i=0s=5050A第五章第五章 循环结构程

8、序设计循环结构程序设计1.选择题选择题(13)以下不形成死循环的是以下不形成死循环的是A.for(;x+=i);B.while(1)x+;C.for(i=10;i-)sum+=i;D.for(;(c=getchar()!=n;)printf(“%c”,c);D缺少终止循环的条件缺少终止循环的条件循环条件始终为真循环条件始终为真缺少终止循环的条件缺少终止循环的条件第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(14)下列程序的运行结果为下列程序的运行结果为#include main()int k=1;char c=A;do switch(c+)case A:k+;break;ca

9、se B:k-;case C:k+=2;break;case D:k=k%2;continue;case E:k=k*2;break;default:k=k/3;k+;while(cF);printf(“k=%dn”,k);A.k=1B.k=15C.k=12D.以上结果都不对以上结果都不对c+ckkA B 23B C 2 4 5C D 7 8D E 0E F 0 1A第五章第五章 循环结构程序设计循环结构程序设计1.选择题选择题(15)执行下述程序的输出结果是执行下述程序的输出结果是#include main()int i=0,j;for(j=9;ij;i+)for(i=9;i=j-1)pri

10、ntf(“%dn”,j);A.11B.10C.9D.1011C外循环:1.j=9内循环:i=9,i=j-1成立,输出j值92.i=10,ij不成立外循环结束程序结束第五章第五章 循环结构程序设计循环结构程序设计2.填空题填空题(1)华氏温度和摄氏温度的转换公式为华氏温度和摄氏温度的转换公式为C=5/9*(F-32),其中,其中表示摄氏温度,表示摄氏温度,F表示华氏温度。要求输出从华氏表示华氏温度。要求输出从华氏0到华氏到华氏300,每隔,每隔20 输出一个值。输出一个值。main()int upper,step;float fahr=0,celsius;upper=300;step=20;wh

11、ile(b;+b)i+;while(a+c)j+;do k+;while(ad+);(3)用用for循环打印循环打印1 4 7 10 13 16 19 22 25,请完善,请完善printf函数函数。for(i=1;i0;);printf(“z=%fn”,z);z*=xy-第五章第五章 循环结构程序设计循环结构程序设计2.填空题填空题(5)下面程序的输出结果是下面程序的输出结果是 main()int x=9;for(;x0;)if(x%3=0)printf(“%d”,-x);continue;x-;x-x(printf)x-9 887766 55 4433 211 0852第五章第五章 循环结

12、构程序设计循环结构程序设计2.填空题填空题(6)在全国计算机等级在全国计算机等级C语言上机考试中,不少试题与素数有关。语言上机考试中,不少试题与素数有关。执行下述程序将输出执行下述程序将输出3到到100之间的所有素数。请填空。之间的所有素数。请填空。#include main()int i,j;for(i=3;i=100;i+)for(j=2;j=i 素数:也称质数,就是一个大于等2的整数,并且只能被1和本身整除,而不能被其他整数整除的数。第五章第五章 循环结构程序设计循环结构程序设计2.填空题填空题(7)已知已知:任意一个正整数的立方都可以写成一串连续奇数的和任意一个正整数的立方都可以写成一

13、串连续奇数的和.例例如如:131313=2197=157+159+.+177+179+181下列程序可下列程序可以验证上述定理以验证上述定理.main()long int n,i,k,j,sum;printf(“Enter n=”);scanf(“%ld”,&n);k=n*n*n;for(i=1;ik/2;i+=2)for(j=i,sum=0;j+=2)sum+=j;if()printf(“%ld*%ld*%ld=%ld=form%ldto%ldn”,n,n,n,sum,i,);sum=ksumkj-2第五章第五章 循环结构程序设计循环结构程序设计2.填空题填空题(8)计算计算s=的程序如下的

14、程序如下,请填空请填空.main()long int s,p;int i,j;for(i=1;i=20;i+);for(j=1;j+)/*计算计算i!*/p=p*j;s=s+p;printf(“s=%ldn”,s);s=0 p=1j=i第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题(每个每个/*found*/下面的几行语句中都有一处下面的几行语句中都有一处错误错误)将错误的地区方改正将错误的地区方改正.注意注意:不要改动不要改动main函数函数,不不得增行或删行得增行或删行,也不得更改程序的结构也不得更改程序的结构.第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题

15、(1)按顺序读入按顺序读入10名学生名学生4门课程的成绩门课程的成绩,计算出每位学生的平均计算出每位学生的平均分并输出。程序如下。分并输出。程序如下。main()int n,k,score,sum;float ave;/*found*/For(n=1;n=10;n+)sum=0;/*found*/for(k=0;k fork=0-k=1ave=sum/4.0;第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题(2)一个三位数,其各位数字的立方和等于读数本身,此数称一个三位数,其各位数字的立方和等于读数本身,此数称为为“水仙花数水仙花数”,如:,如:153是一个是一个“水仙花数水仙花

16、数”,因为,因为153=13+53+33。下列程序为打印出所有水仙花数的程序。下列程序为打印出所有水仙花数的程序。main()int i,j,k,m;for(i=1;i=9;i+)/*found*/for(j=0;j=9;i+)for(k=0;k=9;k+)/*found*/m=100*k+10*j+i;if(m=i*i*i+j*j*j+k*k*k)printf(“%d”,m);m=100*i+10*j+k;i+改为j+第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题(3)根据以下公式求根据以下公式求值。例如,给指定精度的变量值。例如,给指定精度的变量eps输入输入0.0005时

17、,应当输出时,应当输出Pi=3.140578.#include main()double r,eps,temp;int m=1;printf(n please enter a precision:);scanf(%lf,&eps);r=0.0;/*found*/temp=0;/*found*/while(temp=eps)temp=1r*2第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题(4)计算并输出计算并输出n以内最大的以内最大的10个能被个能被 11或或10整除的自然数之整除的自然数之和。若和。若n的值为的值为300,则输出为,则输出为2646.#include main(

18、)int m=0,mix=0,n;/*found*/scanf(%d,n);while(n=2)&(mix10)/*found*/if(n%11=0)|(n%10=0)m=m+n;mix+;n-;printf(%dn,m);if(n%11=0)|(n%10=0)n&n第五章第五章 循环结构程序设计循环结构程序设计3.改错题改错题(5)统计一个无符号整数中各位数字值为统计一个无符号整数中各位数字值为0的个数,并求出各位的个数,并求出各位上的最大数字值。例如,若输入无符号整数上的最大数字值。例如,若输入无符号整数10080,则数字,则数字值为值为0的个数为的个数为3,各位上数字值最大的数是,各位上

19、数字值最大的数是8.#include main()usigned m;int n=0,max=0,t;scanf(%d,&m);do /*found*/t=m/10;/*found*/if(t=0)n+;if(maxt)max=t;/*found*/m=m%10;while(m);printf(nThe result:max=%d z=%dn,max,n);t=0;t=m%10;m=m/10;第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(1)求下列式子的值。求下列式子的值。#include void main()int n=1;float sign=1.0,sum=0;whi

20、le(n=100)sum+=sign/n;sign=-sign;n+;printf(sum=%fn,sum);符号进行交替变化第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(1)求下列式子的值。求下列式子的值。#include void main()float sum=0,i;for(i=1;i=99;i=i+2)sum+=1/i;for(i=2;i=100;i=i+2)sum-=1/i;printf(%fn,sum);将正负两项分开来求和第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(1)求下列式子的值。求下列式子的值。#include void main()

21、float sum,n,t1,t2;sum=0;n=1;while(n=100)t1=1/n;t2=-1/(n+1);sum=sum+t1+t2;n=n+2;printf(%fn,sum);一次求两项第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(2)编程求编程求110的阶乘,并分别显示在屏幕上。的阶乘,并分别显示在屏幕上。#include void main()int n;long s=1;for(n=1;n=10;n+)s*=n;printf(%d!=%dn,n,s);void main()int n,s;s=1;n=1;while(n=10)s*=n;printf(“%d

22、!=%dn”,n,s);n+;第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(2)编程求编程求110的阶乘,并分别显示在屏幕上。的阶乘,并分别显示在屏幕上。#include main()int i;long int n=1;for(i=1;i=10;i+)n=n*i;printf(i%5=0?%2d!=%-10ldn:%2d!=%-10ld,i,n);分析:星号为等差数列an=a1+(n-1)dan=1+(n-1)*2=2*n-14.编程题编程题(3)输入输入n值,输出由值,输出由*组成的高为组成的高为n的等腰三角形。的等腰三角形。分析分析:每行的起始位置不同每行的起始位置不同

23、,空格数空格数(2*n-1)-(2*row-1)=2*(n-row)每行的字符数不同,字符数每行的字符数不同,字符数2*row-1 用二重循环实现,外循环控制输出行数用二重循环实现,外循环控制输出行数 两个并列内循环控制输出每行的空格数和字符数两个并列内循环控制输出每行的空格数和字符数void main()int n,row,col;printf(Input n:);scanf(%d,&n);for(row=1;row=n;row+)for(col=1;col=n-row;col+)printf();for(col=1;col=2*row-1;col+)printf(*);for(col=1;

24、col=n-row;col+)printf();printf(n);第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(4)一个数如果恰好等于它的因子之和,这个就称为一个数如果恰好等于它的因子之和,这个就称为“完数完数”。如:如:6的因子为的因子为1、2、3,而,而6=1+2+3,因此,因此6是是“完数完数”。编。编程序找出程序找出1000之内的所有完数,并按下面格式输出其因子。之内的所有完数,并按下面格式输出其因子。6 its factors are 1、2、3 方法方法1:main()int m,i,j,s;for(m=6;m1000;m+)s=m-1;for(i=2;im;i

25、+)if(m%i=0)s=s-i;if(s=0)printf(“%5d its factors are 1”,m);for(j=2;jm;j+)if(m%j=0)printf(“%d”,j);printf(“n”);第五章第五章 循环结构程序设计循环结构程序设计4.编程题编程题(4)一个数如果恰好等于它的因子之和,这个就称为一个数如果恰好等于它的因子之和,这个就称为“完数完数”。如:如:6的因子为的因子为1、2、3,而,而6=1+2+3,因此,因此6是是“完数完数”。编。编程序找出程序找出1000之内的所有完数,并按下面格式输出其因子。之内的所有完数,并按下面格式输出其因子。6 its fac

26、tors are 1、2、3 main()int m,s,i;for(m=6;m1000;m+)s=0;for(i=1;im;i+)if(m%i)=0)s=s+i;if(s=m)printf(%d its factors are,m);for(i=1;im;i+)if(m%i=0)printf(%d,i);printf(n);第五章第五章 循环结构程序设计循环结构程序设计分析:分析:假设假设:前一天的桃子是前一天的桃子是x1第二天的桃子是第二天的桃子是x2则:则:x2=x1/2-1得:得:x1=2(x2+1)4.编程题编程题(6)猴子吃桃问题猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,猴

27、子吃桃问题猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想再吃时,就后每天早上都吃了前一天剩下的一半零一个。到第十天早上想再吃时,就只剩一个桃子了。求第一天共摘多少桃子。只剩一个桃子了。求第一天共摘多少桃子。#include main()int day,x1,x2;day=9;x2=1;while(day0)x1=(x2+1)*2;x2=x1;day-;printf(total=%dn,x1);第五章第五章 循环结构

28、程序设计循环结构程序设计#include void main()int day,x=1;for(day=9;day=1;day-)x=(x+1)*2;printf(总共总共%d桃子桃子n,x);4.编程题编程题(6)猴子吃桃问题猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,猴子吃桃问题猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以又多吃了一个第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第十天早上想再吃时,就后每天早上都吃了前一天剩下的一半零一个。到第十天早上想再吃时,就只剩一个桃子了。求第一天共摘多少桃子。只剩一个桃子了。求第一天共摘多少桃子。#include int peach(int n)int num=0;if(n=10)num=1;else num=(peach(n+1)+1)*2;return num;void main()printf(%d,peach(1);第五章第五章 循环结构程序设计循环结构程序设计

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁