fibonacci数列c语言
时间: 2023-09-21 07:03:19 浏览: 77
下面是一个简单的C语言程序来生成Fibonacci数列:
```c
#include <stdio.h>
int main()
{
int n, i, t1 = 0, t2 = 1, nextTerm;
printf("输入一个正整数: ");
scanf("%d", &n);
printf("Fibonacci数列: ");
for (i = 1; i <= n; ++i)
{
printf("%d, ", t1);
nextTerm = t1 + t2;
t1 = t2;
t2 = nextTerm;
}
return 0;
}
```
这个程序要求用户输入一个正整数n,然后生成Fibonacci数列的前n个数字。程序使用变量t1和t2来存储前两个数字,然后使用nextTerm计算下一个数字。循环会执行n次,每次打印当前的t1值,并更新t1和t2以计算下一个数字。
相关问题
斐波那契数列c语言程序
以下是三种不同方法实现斐波那契数列的C语言程序:
1. 递归法
```c
#include <stdio.h>
int Fib(int n) {
if (n <= 1) {
return n;
}
return Fib(n - 1) + Fib(n - 2);
}
int main() {
int n;
scanf("%d", &n);
printf("%d", Fib(n));
return 0;
}
```
2. 非递归法
```c
#include <stdio.h>
int Fib(int n) {
int a = 0, b = 1, c, i;
if (n == 0) {
return a;
}
for (i = 2; i <= n; i++) {
c = a + b;
a = b;
b = c;
}
return b;
}
int main() {
int n;
scanf("%d", &n);
printf("%d", Fib(n));
return 0;
}
```
3. 数组法
```c
#include <stdio.h>
int Fib(int n) {
int i;
int arr[100] = {0, 1, 1};
for (i = 2; i <= n; i++) {
arr[i] = arr[i - 1] + arr[i - 2];
}
return arr[n];
}
int main() {
int n;
scanf("%d", &n);
printf("%d", Fib(n));
return 0;
}
```
斐波那契数列c语言递归
#include <stdio.h>
int fib(int n) {
if (n == 0) {
return 0;
} else if (n == 1) {
return 1;
} else {
return fib(n - 1) + fib(n - 2);
}
}
int main() {
int n = 10;
for (int i = 0; i < n; i++) {
printf("%d ", fib(i));
}
return 0;
}
阅读全文