C语言打印斐波那契数列前15个数
时间: 2024-09-27 19:08:25 浏览: 1
要使用C语言打印斐波那契数列的前15个数,你可以稍微调整给定的代码片段。这里是一个修改后的版本,只打印前15项:
```c
#include <stdio.h>
int main() {
int num1 = 1; // 第一个数
int num2 = 1; // 第二个数
printf("斐波那契数列前15项如下:\n");
// 打印前两个数
printf("%d ", num1);
printf("%d ", num2);
// 打印剩余的13个数(因为已经打印了前两个)
for (int i = 3; i <= 15; i++) {
int nextNum = num1 + num2; // 计算下一个数
printf("%d ", nextNum); // 更新num1和num2的值
num1 = num2;
num2 = nextNum;
}
return 0;
}
```
运行这段代码,你会看到斐波那契数列的前15个数字。
相关问题
用C语言输出斐波那契数列前20个数
好的,以下是C语言输出斐波那契数列前20个数的代码:
```c
#include <stdio.h>
int main() {
int a = 0, b = 1, c, i;
printf("斐波那契数列前20个数如下:\n");
printf("%d %d ", a, b); // 输出前两个数
for (i = 3; i <= 20; i++) {
c = a + b;
printf("%d ", c);
a = b;
b = c;
}
printf("\n");
return 0;
}
```
输出结果如下:
```
斐波那契数列前20个数如下:
0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181
```
打印斐波那契数列前15个数
要打印斐波那契数列的前15个数字,你可以选择两种不同的方法:
**方法一:C语言递归实现**
```c
#include <stdio.h>
#include <stdlib.h>
// 递归求解斐波那契数列
int fab(int n) {
if (n == 0 || n == 1)
return 1;
else
return fab(n - 2) + fab(n - 1);
}
int main() {
int arr[15]; // 定义一个大小为15的整型数组
printf("方法1:递归调用\n");
// 打印前15项斐波那契数列
for (int i = 0; i < 15; i++) {
arr[i] = fab(i);
printf("%d ", arr[i]);
}
printf("\n");
system("pause"); // 系统暂停
return 0;
}
```
**方法二:Python非递归实现**
```python
def fibo(x):
if x < 1 or not isinstance(x, int):
return None
elif x == 1 or x == 2:
return x
else:
return fibo(x - 2) + fibo(x - 1)
def getN_num_in_Fibo(nums):
num_list = []
for i in range(1, nums + 1): # 下标从1开始,取到第n个元素
num_list.append(fibo(i))
return num_list
# 打印斐波那契数列的前15个数字
print(getN_num_in_Fibo(15))
```
运行上述Python代码后,你会得到斐波那契数列的前15个数字。