- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
用数的分离方法求解例4.32的水仙花数。 void main() {int i,j,k,num; for(num=100;num=999;num++) {i=num/100; /*分离出百位数*/ j=num/10-i*10; /*分离出十位数*/ k=num%10; /*分离出个位数*/ if(num==i*i*i+j*j*j+k*k*k) printf(“%4d”,num); } printf(“\n”); } 用穷举法求出所有水仙花数。 void main() {int i,j,k,m1,m2; printf(“narcissus numbers are:”); for(i=1;i=9;i++) for(j=0;j=9;j++) for(k=0;k=9;k++) {m1=i*100+j*10+k; m2=i*i*i+j*j*j+k*k*k; if(m1==m2)printf(“%4d”,m1);} printf(“\n”); } 输出1—999所有同构数(出现在它的平方数右侧)如:5出现在25右侧,25出现在625右侧 main ( ) {long k , m , n ; for(k=1;k=999;k++) {m=k*k ; if(k10)n=m%10 ; else if(k100)n=m%100 ; else n=m%1000 ; if(k==n)printf(”%d\n”,k);} } 求用100元钱买100只鸡(每种鸡的只数≥1)的所有买法,其中:1只公鸡5元、1只母鸡3元、3只小鸡1元。 main() int i,j,k; for(i=1 ; i=20 ; i++) for(j=1 ; j=34 ; j++) {k=100-i-j; if((k%3==0)(i*5+j*3+k/3==100)k) Print(“%d,%d,%d\n”,i,j,k); } } 百钱买百鸡解法二 main() {int x,y,z; printf(\n); for(x=1;x=100;x++) for(y=1;y=100;y++) for(z=1;z=100;z++) if(x+y+z==10015*x+9*y+z==300z%3==0) printf(%3d%3d%3d,x,y,z); } 二、求累加、连乘的算法: 1、循环条件 次数控制(加多少项n,20,100) 用误差控制(直到某一项小于或大于一个数) 使用终止标记 2、循环体 求和 求每一项:从前一项求出后一项、单独求每一项 为下一项作准备 3、 循环初值: 设为0、设为第一项 注意双重循环设初值的位置 (1)给累乘器赋初值,一般为1; (2)用循环语句实现累乘; for(循环变量赋初值;循环条件;循环变量改变规律) (3)循环体设计。 累乘器当前值=累乘器原值*循环变量当前值; 累乘器赋初值 计算 7+72+73+······+7n main() { int i,n; long t=1,s=0; printf(please input n:\n); scanf(%d,n); for(i=1;i=n;i++) { t*=7; s+=t;} printf(7+7*7+7*7*7+...=%d\n,s); } 计算 main( ) {float sum=0 , term ,x; int n , j , k ,sign ; scanf ( ”%d%f” , n , x ) ; sign = - 1 ; for ( j=1 ; j=n ; j+ + ) {term=1 ; for ( k=1 ; k=2*j-1 ; k+ + ) term*=x / k ; sign = - sign ; sum + = sign * term ;} printf ( ”sum =%f\n” , sum ) ; } 打印如下乘法表: 1 2 3 4 5 6 7 8 9 1 1 2 3 4 5 6 7 8 9 2 2 4 6 8 10
文档评论(0)