已知一个数列从第一项开始的前三项为0、0、1,以后的各项都是其相邻的前三项之和。要求使用递归方法编写fun(n)函数,求该数列第n项的值,返回值为长整型,并写出相应的主函数
#include <stdio.h>
long fun(int n);
int main()
{
int n;
scanf("%d",&n);
long res = fun(n);
printf("%ld",res);
}
long fun(int n){
if(n == 1 || n == 2) return 0;
if(n == 3) return 1;
return fun(n-1) + fun(n-2) + fun(n-3);
}