计算机c语言教学课程2.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法 穷举法 迭代法: 一、确定迭代变量。在可以用迭代算法解决的问题中,至少存在一个直接或间接地不断由旧值递推出新值的变量,这个变量就是迭代变量。 二、建立迭代关系式。所谓迭代关系式,指如何从变量的前一个值推出其下一个值的公式(或关系)。迭代关系式的建立是解决迭代问题的关键,通常可以使用递推或倒推的方法来完成。 三、对迭代过程进行控制。 递推法 即通过已知条件,利用特定关系得出中间推论,直至得到结果的算法。分为顺推和逆推两种。 水仙花数问题 水仙花数是指一个三位数,它的各位数的立方和正好等于该数本身。如:153=13+53+33。请设计算法求解“水仙花数问题”。 算法一: For 某整数=100  to 999 If 该数百位数字的立方+该数十位数字的立方+该数个位数字的立方=该数  Then print 该数 End if Next 某整数 算法二: For 百位数=1 to 9   For 十位数=0 to 9    For 个位数=0 to 9 If 百位数的立方+十位数的立方+个位数的立方=该数 Then print 该数 End if    Next 个位数   Next 十位数 Next 百位数 用穷举法解出“百钱买百鸡” 百钱百鸡问题中国古代数学家张丘建在他的《算经》中提出了著名的“百钱买百鸡问题”:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?    这个故事就是我国古代数学名著《张邱建算经》里的百鸡百钱问题。请用穷举法求解所有的组合方法。 #include stdio.h main() { int m,i,k; scanf(%d,m); k=m-1; for(i=2;i=k;i++) if(m%i==0) break; if(i=k+1) printf(%d is a prime number\n,m); else printf(%d is not a prime number\n,m); } 用m 分别去除以2,3,.., m ,若其中一个能整除,则不是素数,否则是素数。 实际上,只须除到sqrt(m)即可。 #include “math.h” main() { int m,i,k; scanf(“%d”,m); k=sqrt(m); for (i=2;i=k;i++) if(m%i==0)break; if(i=k+1) printf(“%d is a prime number\n”,m); else printf(“%d is not a prime number\n”,m); } 求100以内的素数 #include stdio.h main() { int m,i,k; for(m=2;m=100;m++) { k=m-1; for(i=2;i=k;i++) if(m%i==0) break; if(i=k+1) printf(%d is a prime number\n,m); else printf(%d is not a prime number\n,m); } } 输入一个整数后逆序输出该数的各位数字. main() { int m,r; scanf(%d,m); while(m) {r=m%10; m=m/10; printf(%4d,r); } } 输入一个整数,计算该数各位数字的和 编写一个程序,打印所有的“梅花数”。 所谓“梅花数”是指一个五位数,其各位数字的五次方和等于该数本身。例如:54748是一个“梅花数”,因为54748=55+45+75+45+85 遍历查找10000—99999的数据,用do……while语句 #include math.h main() { long w,d,r,s; for (w=10000; w100000; w++) { d=w; s=0; do 求各位数字的五次方的和 { r=d%10; d=d/10; s=s+pow(r,5); } while (d); if (s==w) printf(“w=%ld\n,s); }   迭代法 常用例 Ex 人口增长问题 Ex 兔子繁殖问题 Ex 一元方程迭代解法 #include stdio.h

文档评论(0)

wxc6688 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档