求斐波那契(Fibonacci)數列:1,1,2,3,5,8,13,21...的前n個數及總和
阿新 • • 發佈:2021-02-09
題目
求斐波那契(Fibonacci)數列:1,1,2,3,5,8,13,21…的前n個數,要求輸入n,輸出前n個數,並且輸出前n個數之和
思路
觀察發現從第三個數開始,每一個數都是前兩個數之和
程式碼
#include<stdio.h>
main()
{
int a=1,b=1,c,n,sum=2;//a、b、c分別是第一項第二項和某一項 ,此時的sum是前2項之和2
printf("請輸入n:");
scanf("%d",&n);
printf("%d %d ",a,b) ;
for(int i=0;i<n;i++)
{
c=a+b;
a=b;
b=c;
printf("%d ",c);
sum+=c;
}
printf("\nsum=%d",sum);
}
結果
寫在後面
歡迎大家指出錯誤的地方