用c语言写斐波那锲数列
时间: 2023-09-13 13:12:33 浏览: 84
好的,以下是在 C 语言中实现斐波那契数列的代码:
```c
#include <stdio.h>
int main()
{
int n, i, t1 = 0, t2 = 1, nextTerm;
printf("输入一个正整数:");
scanf("%d", &n);
printf("斐波那契数列:");
for (i = 1; i <= n; ++i)
{
printf("%d, ", t1);
nextTerm = t1 + t2;
t1 = t2;
t2 = nextTerm;
}
return 0;
}
```
运行程序后,输入一个正整数n,程序将会输出前n项斐波那契数列的值。
相关问题
c语言用队列输出斐波那锲数列
下面是用 C 语言实现斐波那契数列的队列版本代码:
```c
#include <stdio.h>
#define MAXSIZE 100
typedef struct {
int data[MAXSIZE];
int front, rear;
} Queue;
void initQueue(Queue *q) {
q->front = q->rear = 0;
}
int isEmpty(Queue *q) {
return q->front == q->rear;
}
int isFull(Queue *q) {
return (q->rear + 1) % MAXSIZE == q->front;
}
void enQueue(Queue *q, int x) {
if (isFull(q)) {
printf("Queue is full!\n");
return;
}
q->data[q->rear] = x;
q->rear = (q->rear + 1) % MAXSIZE;
}
int deQueue(Queue *q) {
if (isEmpty(q)) {
printf("Queue is empty!\n");
return -1;
}
int x = q->data[q->front];
q->front = (q->front + 1) % MAXSIZE;
return x;
}
int main() {
Queue q;
initQueue(&q);
int a = 0, b = 1, n, i;
printf("Enter the number of terms: ");
scanf("%d", &n);
printf("Fibonacci Series: ");
enQueue(&q, a);
enQueue(&q, b);
for (i = 1; i <= n; i++) {
a = deQueue(&q);
b = deQueue(&q);
int c = a + b;
printf("%d ", a);
enQueue(&q, b);
enQueue(&q, c);
}
printf("\n");
return 0;
}
```
在上面的代码中,使用了一个队列来存储斐波那契数列中的每个元素。首先将前两项 0 和 1 分别入队,然后在循环中取出队列中的前两项,计算它们的和,将第二项和和计算结果入队,然后输出当前的第一项。循环结束后即可输出完整的斐波那契数列。
C语言实现斐波那次数列
以下是使用 C 语言实现斐波那契数列的代码:
```c
#include <stdio.h>
int fibonacci(int n) {
if (n == 0) return 0;
if (n == 1) return 1;
return fibonacci(n-1) + fibonacci(n-2);
}
int main() {
int n, i;
printf("请输入斐波那契数列的项数:");
scanf("%d", &n);
printf("斐波那契数列前 %d 项为:", n);
for (i = 0; i < n; i++) {
printf("%d ", fibonacci(i));
}
printf("\n");
return 0;
}
```
运行结果如下:
```
请输入斐波那契数列的项数:10
斐波那契数列前 10 项为:0 1 1 2 3 5 8 13 21 34
```
阅读全文