为什么运行不出结果
已知: f(0)=f(1)=1 f(2)=0 f(n)=f(n-1)-2f(n-2)+f(n-3), (n>2) 求f(0)到f(50)中的最大值#include"stdio.h"
#include"math.h"
long f(long n)
{
if(n==0||n==1)return 1;
else if(n==2)return 0;
return f(n-1)-2*f(n-2)+f(n-3);
}
long main()
{
long i,max=0;
for(i=0;i<=50;i++)
{
if( f(i)>max)
max=f(i);
}
printf("%ld\n",max);
getchar();
}