C趣味编程百例(31)兎子产子

文章作者 100test 发表时间 2007:03:10 17:34:52
来源 100Test.Com百考试题网


94.兎子产子
从前有一对长寿兎子,它们每一个月生一对兎子,新生的小兎子两个月就长大了,在第二个月的月底开始生它们的下一代小兎子,这样一代一代生下去,求解兎子增长数量的数列。
*问题分析与算法设计
问题可以抽象成下列数学公式:
Un=Un-1 Un-2
其中:
n是项数(n>=3)。它就是著名的菲波那奇数列,该数列的前几为:1,1,2,3,5,8,13,21...
菲波那奇数列在程序中可以用多种方法进行处理。按照其通项递推公式利用最基本的循环控制就可以实现题目的要求。
*程序与程序注释
#include
void main()
{
int n,i,un1,un2,un.
for(n=2.n<3.)
{
printf("Please enter required number of generation:").
scanf("%d",&.n).
if(n<3) printf("\n Enter error!\n"). /*控制输入正确的N值*/
}
un=un2=1.
printf("The repid increase of rabbits in first %d generation is as felow:\n",n).
printf("l\tl\t").
for(i=3.i<=n.i )
{
un1=un2.
un2=un.
un=un1 un2. /*利用通项公式求解N项的值*/
printf(i?"%d\t":"%d\n",un).
}
printf("\n").
}

*运行结果
Please enter required number of generation: 20
The repid increase of rabbits in first 20 generation is as felow:
1 1 2 3 5 8 13 21 34 55
89 144 233 377 610 987 1597 2584 4181 6765

相关文章


实用资料:三大计算机认证考试各有不同的侧重
二级ACCESS辅导17种正则表达式
C趣味编程百例(31)兎子产子
Access键盘快捷键大全[上]
全国计算机等级考试报考简章
C趣味编程百例(32)选美比赛
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛