关于c++报错问题求解

本问题在DEVC++中编译
希望用递归法求解n阶勒让德多项式的值

#include
using namespace std;
int main()
{
    int f(int,int);
    int n,x;
    float y;
    cin>>n>>x;
    y = f(n,x);
    cout<return 0;
}
float f(int n,int x)
{
    float t;
     if (n == 0) t = 1;
     if (n == 1) t = x;
     if (n >= 2) t = ((2*n-1)*x-f(n-1)-(n-1)*f(n-2))/2;
     return (t);
}

编译上述程序会出现如下报错

18    35    [Error] too few arguments to function 'float f(int, int)'

求解原因

f函数递归的时候少了参数。

int main中的int f都没写参数,只写了个int啊