Problem with the code?

#include
using namespace std;
int number_pairs(int n,int i)
{
if(i==n-1)
return 2;
if(i==n)
return 1;
int ans1=number_pairs(n,i+1);
int ans2=number_pairs(n,i+2);
return ans1+ans2;
}
int main()
{
int t;
cin>>t;
while(t–)
{
int n;
cin>>n;
int x=number_pairs(n,0);
cout<<"#"<<n<<" : "<<x<<endl;
}
return 0;
}

ur approach is little incomplete
please check out my code for better understanding