第5章-编程进阶.pptVIP

  • 15
  • 0
  • 约2.48千字
  • 约 56页
  • 2019-09-10 发布于福建
  • 举报
累乘问题的求解和累加有相似之处,也是转化为递推公式Sn=Sn-1*t进行求解。这里要注意的是,累乘结果的初始化是1,并且累乘的结果比较大,很容易超出变量类型的表示范围,因此要注意变量类型的选择,特别在标准C中,整型与长整型字节数不同。 5.2.2 穷举搜索法 “穷举法”也称为“枚举法”,其优点在于算法思想简单、易于实现,对于初学者和一些规模不大的问题,是一种较好的选择。 ? 【例5-8】找零钱问题,把一元钞票换成一分、二分和五分的硬币,有多少种换法?输出所有可能的方案。 设一分、二分和五分的硬币的个数分别为:one、two、five,则根据题目要求 one+2*two+5*five=100 在上例中,如果去掉else及break,程序运行结果有变化吗?为什么?还可以选择用三重循环,请分析比较。类似的问题还有鸡兔同笼、抓球问题等等,可以参考本章习题。 5.2.3 数位提取问题 1.整数位的提取 一般处理位提取的问题,我们常用的法宝是两个运算符:“/”和“%”。 “/”运算符常用于整数之间的整除,一般用除以10或100这样的数以提取高位,如:374/100=3,其结果截去了低位数的整数。 “%”运算符用于求两个整数相除后的余数,一般右边的操作数也是10或100,用于取出低位数,如123%10得到个位3。 【例5-10】输出1000以内所

文档评论(0)

1亿VIP精品文档

相关文档