运行一直显示答案错误可以帮我看看嘛

问题遇到的现象和发生背景

可以帮我看看下面的代码哪里有问题吗?一直显示答案错误。
#include
int main()
{
int n,a,b,i,sum;
scanf("%d",&n);
if((n<1)||(n>46))
{printf("Invalid.\n");}
else if(n==1)
{printf("11%d",1);}
else
{
a=1;
b=1;
printf("%11d%11d",a,b);
for(i=3;i<=n;i++)
{
sum=a+b;
printf("%11d",sum);
if(i%5==0)
{printf("\n");}
a=b;
b=sum;
}
}
return 0;
}

用代码块功能插入代码,请勿粘贴截图

printf("11%d",1);这是要干点啥,这打印出来是111啊
printf("%11d",sum);你这不是知道正确的应该什么样吗,怎么能写出这样糟糕的代码来

你一定要贴出题目来
printf("%11d%11d",a,b);改为
printf("%11d%11d",&a,&b);