请用C语言编程求fibonacci数列:1,1,2,3,5,8……的前n个数并依次打印出来,n需要输入。
时间: 2024-10-17 20:07:03 浏览: 134
在C语言中,我们可以使用递归或迭代的方式来计算Fibonacci数列。以下是使用迭代方法的一个简单示例:
```c
#include <stdio.h>
// 使用数组存储Fibonacci数列
int fib[100]; // 假设我们只关心不超过100项的Fibonacci数
void print_fibonacci(int n) {
int i;
fib[0] = 0;
fib[1] = 1;
printf("%d ", fib[0]); // 打印第一个数
for (i = 1; i < n; ++i) {
printf("%d ", fib[i]); // 打印当前项
fib[i+1] = fib[i] + fib[i-1]; // 计算下一个数
}
}
int main() {
int n;
printf("请输入一个正整数n: ");
scanf("%d", &n);
if(n <= 0) {
printf("输入的数值不正确,Fibonacci序列仅对正整数有效.\n");
} else {
print_fibonacci(n);
}
return 0;
}
```
在这个程序中,用户首先输入一个正整数n,然后`print_fibonacci`函数会生成并打印出前n个Fibonacci数。请注意,这个简单的版本对于大数值可能会有性能问题,因为每次都需要重新计算已经计算过的Fibonacci数。
阅读全文