- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
main( ) { int i; int j; int cj; printf( 1 2 3 4 5 6 7 8 9\n); for(i=1;i=9;i++) { printf(%d,i); for(j=1;j=i;j++) { cj=i*j; printf(%4d,cj); } printf(\n); } } 例2:求三位数100~999之间的水仙花数。所谓 “水仙花数” 是指一个数其各位数字立方和等于该数本身。例如153就是一个水仙花数。(习题册第二题,P25) 分析:首先,先对一个三位数的个位数、十位数、百位数分别求出来 ,个位数=三位数%10 十位数=(三位数/10)%10 百位数=三位数/100 其次,对个位数、十位数、百位数分别求3次方,并求和。 最后,判断这个三位数是否等于各位数的三次方和。 程序代码: main( ) { int i; int x,y,z; //存放十位,百位,个位数 for(i=100;i=999;i++)//对100-999每个数进行判断 { x=i%10; y=(i/10)%10; z=i/100; if(i==z*z*z+y*y*y+x*x*x) //判断是否满足条件 printf(%5d,i); } } 例3.求出1000以内的所有完全数。若一个数恰好等于它 的因子之和(除自身外),则称该数为完全数。 例如:6=1+2+3,故6是完全数。(书习题5.5,P92页) 分析:1.一个数的因子:除自身外所有能整除该数的数。 2.首先,对1000内的每一个数求出其因子; 其次,对将该数的所有因子进行求和; 最后,判断所有因子的和是否等于该数,若相 等就将该数和其因子都输出来。 程序代码: main() { int m,s,i; //定义m为1000内的数 for(m=2;m=1000;m++) //对每个数进行判断 { s=0; for(i=1;im;i++) //每个数的因子都小于该数 { if((m%i)==0) //一个数除以它的因子余数为0 s=s+i; //求每个数的所以因子和赋给S } if(s==m) //判断个因子和是否等于该数,若相等即为完全数, 并将器因子输出 { printf(%5d是完全数,m); printf(其因子分别为:); for(i=1;im;i++) if(m%i==0) printf( %d,i); printf(\n); } } } 例4.输出1到1000之内所有的同构数,所谓同构数是指一个数出现在它的平方数的右边,如5的平方是25,5出现在25的右边,25的平方625,25出现在625的右边,因此5是25的同构数。 分析:1.对一位数1~9的进行判断, n*n%10==n; 2.对两位数10~99进行判断, n*n%100==n; 3.对两位数100~999进行判断,n*n%1000==n; 程序代码: main() { int n; for(n=1;n=1000;n++) { if(n*n%10==n ||n*n%100==n || n*n%1000==n) printf(%d\n,n); } } 设:x最多为20,y最多为33,当x,y已确定时, z的值为100-x-y main() { int x,y,z; for(x=0;x=20;x++) { for(y=0;y=33;y++) { z=100-x-y; if(5*x+3*y+z/3==100z%3==0) printf(%d,%d,%d\n,x,y,z); } } } 共六组解: x y z 3 20 77 4 18 78 7 13 80 8 11 81 11 6 83 12 4 84 所求的z不能被3整除如何解决? §5.6 循环的嵌套
原创力文档


文档评论(0)