请问这个程序哪里错了 求菲波拉契数列前n项之和# include int main (){\x05int n,i,f1=1,f2=1,f3=2,sum=4,temp;\x05\x05for (;;)\x05{\x05\x05scanf ("%d",&n);\x05\x05if (n==0)\x05\x05\x05break;\x05\x05if (n==1)\x05\x05\x05printf ("%d\n",f

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/14 18:02:37
请问这个程序哪里错了 求菲波拉契数列前n项之和# include int main (){\x05int n,i,f1=1,f2=1,f3=2,sum=4,temp;\x05\x05for (;;)\x05{\x05\x05scanf (

请问这个程序哪里错了 求菲波拉契数列前n项之和# include int main (){\x05int n,i,f1=1,f2=1,f3=2,sum=4,temp;\x05\x05for (;;)\x05{\x05\x05scanf ("%d",&n);\x05\x05if (n==0)\x05\x05\x05break;\x05\x05if (n==1)\x05\x05\x05printf ("%d\n",f
请问这个程序哪里错了 求菲波拉契数列前n项之和
# include
int main ()
{
\x05int n,i,f1=1,f2=1,f3=2,sum=4,temp;
\x05
\x05for (;;)
\x05{
\x05\x05scanf ("%d",&n);
\x05\x05if (n==0)
\x05\x05\x05break;
\x05\x05if (n==1)
\x05\x05\x05printf ("%d\n",f1);
\x05\x05else if (n==2)
\x05\x05\x05printf("%d\n",f2+f1);
\x05\x05else if (n==3)
\x05\x05\x05printf ("%d\n",f1+f2+f3);
\x05\x05else
\x05\x05{
\x05\x05\x05for (i=4;i

请问这个程序哪里错了 求菲波拉契数列前n项之和# include int main (){\x05int n,i,f1=1,f2=1,f3=2,sum=4,temp;\x05\x05for (;;)\x05{\x05\x05scanf ("%d",&n);\x05\x05if (n==0)\x05\x05\x05break;\x05\x05if (n==1)\x05\x05\x05printf ("%d\n",f
首先菲式数列是:1,1,2,3,5,8.所以n=2的时候,应该就输出f2,等于3的时候就输出f3,大于3之后按照你的算法就是输出f3,因为递归规律是当n>2时,F(n)=F(n-1)+F(n-2),当前项是前两项的和,而不是前面所有项的总和.你完全搞错了.