我必須編寫代碼,將斐波那契數列顯示給用戶所需的術語數,並且還必須使用while循環。我不知道爲什麼這個代碼不工作。Fibonacci序列while循環
#include <stdio.h>
#include <stdlib.h>
int main (void) {
int max;
printf("Enter the max term of the Fibonacci Sequence:\n");
scanf("%i", &max);
int a=0;
int b=0;
a=2;
while(a<max) {
if((a==0||a==1))
{
printf("%i\n", &a);
++a;
}
else if(a>1)
{
a=(a-1)+(a-2);
printf("%i\n", &a);
++a;
}
}
return 0;
}
你的邏輯似乎是錯誤的。 – Haris
在你的'printf'語句中,你傳遞的是一個指針而不是'int'。擺脫'&'運算符,例如'printf(「%i \ n」,a);' –
您需要同時使用'a'和'b'來完成這項工作。你不能只加倍'a'並減去2來得到下一個數字。 –