- 1、本文档共14页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
导读:在程序填空题中,已经给出了程序的主干,读者首先要理解程序的思路,再选择正确的内容填入空白处,使程序完成既定的功能。这类习题的设计就是要引导读者逐步掌握编程的方法。本节习题的难度适中,可能有些典型的程序在课堂上已经有所接触,读者一定要独立完成它,这样就可以逐步提高自己的编程能力。在程序设计语言学习的中期,读者对程序设计已经有了初步的了解,而自己编写程序又不知从何处入手,此时解答此类题目可以避免盲目性,从而提高学习的效率。
【3.1】下面程序的功能是不用第三个变量,实现两个数的对调操作。#include stdio.hmain(){ int a,b;scanf(%d%d,a,b);printf(a=%d,b=%d\n,a,b);a= ; b= ; a= ;printf(a=%d,b=%d\n,a,b);}
【3.2】下面程序的功能是根据近似公式:π2/6≈ 1/12+1/22+1/32+ …… +1/n2,求π值。#include math.hdouble pi(long n){ double s=0.0;long i;for(i=1;i=n;i++)s=s+ ;return( );}【3.3】下面的程序的功能是求一维数组中的最小元素。findmin(int *s,int t,int *k){ int p;for(p=0,*k=p;pt;p++)if(s[p]s[*k]) ; }main(){ int a[10],i,*k=i;for(i=0;i10;i++)scanf(%d,a[i]);findmin(a,10,k);printf(%d,%d\n,*k,a[*k]);}【3.4】下面程序的功能是计算1-3+5-7+ …… -99+101的值。main(){ int i,t=1,s=0;for(i=1;i=101;i+=2){ ;s=s+t; ;}printf(%d\n,s);}【3.5】有以下程序段:s=1.0;for(k=1;k=n;k++)s=s+1.0/(k*(k+1));printf(%f\n,s);填空完成下述程序,使之与上述程序的功能完全相同。s=0.0; ;k=0; do{ s=s+d; ;d=1.0/(k*(k+1));}while( );printf(%f\n,s);【3.6】下面程序的功能是从键盘上输入若干学生的学习成绩,统计并输出最高成绩和最低成绩,当输入为负数时结束输入。main(){ float x,amax,amin;scanf(%f,x);amax=x;amin=x;while( ){ if(xamax) amax=x; if( ) amin=x;scanf(%f,x);}printf(\namax=%f\namin=%f\n,amax,amin);}【3.7】下面程序的功能是将形参x的值转换为二进制数,所得的二进制数放在一个一维数组中返回,二进制数的最低位放在下标为0的元素中。fun(int x,int b[]){ int k=0,r;do{ r=x% ;b[k++]=r;x/= ;}while(x);}【3.8】下面程序的功能是输出1到100之间每位数的乘积大于每位数的和的数。例如数字26,数位上数字的乘积12大于数字之和8。main(){ int n,k=1,s=0,m;for(n=1;n=100;n++){ k=1;s=0; ;while( ) { k*=m%10;s+=m%10; ;}if(ks)printf(%d,n);}}【3.9】下面程序的功能是统计用0至9之间的不同的数字组成的三位数的个数。main(){ int i,j,k,count=0;for(i=1;i=9;i++)for(j=0;j=9;j++)if( ) continue;else for(k=0;k=9;k++)if( ) count++;printf(%d,count);}【3.10】下面程序的功能是输出100以内的个位数为6、且能被3整除的所有数。main(){ int i,j;for(i=0; ;i++) { j=i*10+6;if( ) countinue;printf(%d,j);}}【3.11】下面程序的功能是用辗转相除法求两个正整数m和n的最大公约数。hcf(int m,int n){ int r;if(mn){ r=m; ;n=r;}r=m%n;while( ){ m=n;n=r;r=m%n;} ;}【3.
文档评论(0)