gpt4 book ai didi

c - 我已经为模式编写了 C 代码,但是我犯了一个我无法识别的小错误

转载 作者:太空宇宙 更新时间:2023-11-04 01:43:58 24 4
gpt4 key购买 nike

我的代码输出是:

1       
1 2
3 5 8
13 21 34 55
89 144 233 377 610

我想要的输出是:

1
1 2
3 5 8
13 21 34 55
89 144 233 377 610

你能告诉我我必须在哪里更改代码吗?

#include <stdio.h>

int fib(int);

int main() {
int i, j, k = 1;
for (i = 1; i <= 5; i++) {
for (j = 1; j <= i; j++) {
printf("%d ", fib(k++));
}
printf("\n");
}
return 0;
}

int fib(int n) {
if (n <= 1)
return n;
return (fib(n - 1) + fib(n - 2));
}

每个数字之间的空格在我的输出中是相同的,但在所需的输出中,所有元素都被正确排序,这使得它们出现在相同的列中。

最佳答案

使用下面的printf调用

printf("%-8d", fib(k++));
^^^^

代替

printf("%d       ", fib(k++));

关于c - 我已经为模式编写了 C 代码,但是我犯了一个我无法识别的小错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57450801/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com