创建一个数组a[n],n代表数列的长度,由键盘输入。将斐波那契数列前n位依次写入数组中,并输出。用C语言写出
时间: 2023-06-09 21:05:54 浏览: 205
下面是用 C 语言实现的程序:
```c
#include <stdio.h>
int fib(int n) {
if(n == 1 || n == 2) return 1;
return fib(n - 1) + fib(n - 2);
}
int main() {
int n;
printf("请输入数列长度n: ");
scanf("%d", &n);
int a[n];
for(int i = 0; i < n; i++) {
a[i] = fib(i + 1);
printf("%d ", a[i]);
}
return 0;
}
```
程序执行过程:
```
请输入数列长度n: 10
1 1 2 3 5 8 13 21 34 55
```
程序解析:
1. 在 `main` 函数中,首先读入数列长度 `n` 。
2. 创建长度为 `n` 的整型数组 `a[n]` 。
3. 使用 `for` 循环遍历数组,计算斐波那契数列的第 `i+1` 项并将其存入数组 `a[i]` 中。
4. 在循环中打印出当前项的值。
5. 程序结束。
相关问题
用c语言编写程序:创建一个数组a[n],n代表数列的长度,由键盘输入。将斐波那契数列前n位依次写入数组中,并输出。
好,以下是代码实现:
```c
#include <stdio.h>
int main() {
int n, i;
printf("请输入数列的长度n:");
scanf("%d", &n);
int a[n];
a[0] = 0;
a[1] = 1;
for(i = 2; i < n; i++) {
a[i] = a[i-1] + a[i-2];
}
printf("斐波那契数列前%d位为:", n);
for(i = 0; i < n; i++) {
printf("%d ", a[i]);
}
printf("\n");
return 0;
}
```
代码的思路是先通过 `scanf` 函数从键盘输入数列的长度 `n`,然后创建一个长度为 `n` 的整型数组 `a`,并将数组的前两个元素初始化为斐波那契数列的前两个数(0和1)。之后通过循环,从第三个元素开始计算每个数,直到计算到第 `n` 个数。最后通过循环输出数组中的每个元素,即为斐波那契数列的前 `n` 项。
java将斐波那契数列写入文件
可以使用Java中的FileWriter类来将斐波那契数列写入文件。以下是一个示例代码:
```java
import java.io.FileWriter;
import java.io.IOException;
public class FibonacciToFile {
public static void main(String[] args) {
int n = 10; // 假设要输出斐波那契数列的前10项
int[] fib = new int[n];
fib = 0;
fib = 1;
for (int i = 2; i < n; i++) {
fib[i] = fib[i - 1] + fib[i - 2];
}
try {
FileWriter writer = new FileWriter("fibonacci.txt");
for (int i = 0; i < n; i++) {
writer.write(fib[i] + " ");
}
writer.close();
System.out.println("斐波那契数列已成功写入文件!");
} catch (IOException e) {
System.out.println("写入文件时出现错误:" + e.getMessage());
}
}
}
```
以上代码将斐波那契数列的前10项写入名为"fibonacci.txt"的文件中。你也可以根据需要修改代码来实现你自己的需求。
阅读全文