Annette_wang
Annette_wang
采纳率77.8%
2021-03-05 12:24

斐波那契求和,程序哪里错了?

已采纳

#include <iostream>

using namespace std;

int main()

{
    int n;
    cin>>n;
    int a[n];
    a[0]=a[1]=1;
    int sum=0,i;
    if(n==1) sum=1;
else if(n==2) sum=2;
   else{ for(i=2;i<n;i++){
        a[i]=a[i-1]+a[i-2];
        sum=a[i]+2;
    }
   }
    cout << sum<< endl;
    return 0;
}
 

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

5条回答

  • qq_43414873 小白小白你好菜 1月前

    #include <iostream>
    using namespace std;

    int main()
    {
        int n;
        cin>>n;
        int a[n];
        a[0] = a[1] = 1;
        int sum = 0, i;
        if(n == 1) 
            sum = 1;
        else if(n == 2)
            sum = 2;
        else{
            sum = 2;//这个很重要
            for(i = 2; i < n; i++){
                a[i] = a[i-1] + a[i-2];
                sum += a[i];
            }
        }
        cout << sum<< endl;
        return 0;
    }

    点赞 1 评论 复制链接分享
  • cxd1314520 岑小岑 1月前

    错在:n>2时,sum初始=2,sum=a[i]+2; 改成:sum +=a[i];

    #include <iostream>
    using namespace std;
    
    int main()
    {
    	int n;
    	cin>>n;
    	int *a=new int[n];
    	a[0]=a[1]=1;
    	int sum=0,i;
    	if(n==1)
    	{
    		sum=1;
    	}
    	else if(n==2)
    	{
    		sum=2;
    	}
    	else
    	{
    		sum=2;
    		for(i=2;i<n;i++)
    		{
    			a[i]=a[i-1]+a[i-2];
    			sum +=a[i];
    		}
    	}
    	
    	cout << sum<< endl;
    	delete[] a;
    	return 0;
    }
    
    点赞 1 评论 复制链接分享
  • qq_43414873 小白小白你好菜 1月前

    对了就点个采纳吧,可怜可怜孩子吧

    点赞 1 评论 复制链接分享
  • SoftwareTeacher SoftwareTeacher 1月前

    你期待什么输出, 看到了什么输出? 请写清楚

    点赞 1 评论 复制链接分享
  • Annette_wang Annette_wang 1月前

    #include <iostream>

    using namespace std;

    int main()
    {
        int i,n,sum=0;
        cin>>n;
        int a[n];
        a[0]=a[1]=1;
        for(i=2;i<n;i++){
            a[i]=a[i-1]+a[i-2];
           // sum=sum+a[i];在此计算不对,不会得到结果。该步其实是初始化
        }
       for(i=0;i<n;i++)
        sum=sum+a[i];

       }
        cout<<sum;
        return 0;
    }
     

    点赞 评论 复制链接分享