用C求斐波那契数列-----(C每日一编程)
2023-12-24 05:57:16
斐波那契数列:
斐波那契数列是指这样一个数列:1,1,2,3,5,8,13,21,34,55,89……这个数列从第3项开始 ,每一项都等于前两项之和。
递推公式:
斐波那契数列:1,1,2,3,5,8,13,21,34,55,89…… ,以如下被以递归的方法定义:从第三项开始,每一项都等于前两项之和,显然这是一个线性递推数列。
一,求斐波那契数列前20项,按每行4个数输出--用递归
参考代码:
int fib(int n) {
if (n == 1 || n == 2)
return 1;
else
return fib(n - 2) + fib(n - 1);
}
int main() {
int i;
for (i = 1; i <= 20; i++) {
printf("%16d", fib(i));
if ((i + 1) % 4 == 0)printf("\n");
}
return 0;
}
输出结果:
二,用数组求斐波那契数列?
已知f1=f2=1,fn=fn-1+fn-2;
参考代码:
void main() {
int i; int f[20] = { 1,1 };
for (i = 2; i < 20; i++)
f[i] = f[i - 2] + f[i - 1];
for (i = 0; i < 20; i++) {
if (i % 5 == 0)printf("\n");
printf("%12d", f[i]);
}
printf("\n");
}
运行结果:
以上仅供参考。?
文章来源:https://blog.csdn.net/weixin_64545778/article/details/135176650
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!