c语言菲波那契数列 分数 15 全屏浏览题目 切换布局 作者 黄正鹏 单位 贵州工程应用技术学院 菲波那契数列是指这样的数列: 数列的第一个和第二个数都为1,接下来每个数都等于前面2个数之和。 给出一个正整数a,要求菲波那契数列中第a个数是多少。 输入格式: 第1行是测试数据的组数n,后面跟着n行输入。每组测试数据占1行,包括一个正整数a(1 <= a <= 20) 输出格式: 输出有n行,每行输出对应一个输入。输出应是一个正整数,为菲波那契数列中第a个数的大小 输入样例: 4 5 2 19 1 输出样例: 在这里给出相应的输出。例如: 5 1 4181 1
时间: 2024-02-25 13:54:39 浏览: 493
青少年软件编程(C语言)等级考试试卷(3级)-2021年9月-含参考答案和解析.docx
以下是 C 语言代码实现:
```c
#include <stdio.h>
// 求 Fibonacci 数列的第 n 个数
int fibonacci(int n) {
if (n == 1 || n == 2) {
return 1;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
int main() {
int n;
scanf("%d", &n);
while (n--) {
int a;
scanf("%d", &a);
printf("%d\n", fibonacci(a));
}
return 0;
}
```
解释一下:首先输入一个整数 n,表示测试数据的组数。在 while 循环中,每输入一组测试数据,就调用 fibonacci() 函数来求出菲波那切数列中第 a 个数。fibonacci() 函数使用了递归的思想来求解,如果 n 为 1 或 2,则直接返回 1,否则返回 fibonacci(n-1) + fibonacci(n-2)。
阅读全文