Los compiladores toman tu codigo desde arriba hacia abajo.
Por lo cual cuando llega a la funcion, te sale el error del titulo del tema. Porque el compilador no conoce que funcion es, para implementar la funcion despues del main debes declararla antes del main.
int v_max(int, int); //aqui le dices al compilador que esta funcion existe pero que luego la implementaras
int main()
{
int valor_1 = 1500;
int valor_max_1 = 1000;
int valor;
valor = v_max(valor_1, valor_max_1); //supongo que la variable valor si la has declarado, en caso que no, entonces debes declararla
}
int v_max(int valor, int valor_max)//las funciones tanto como los nombres de variables deben tener un nombre acorde a lo que hacen. Los parametros [b]no[/b] necesariamente deben tener el mismo nombre de las variables que usamos en nuestro programa principal.
{
if(valor > valor_max)
return valor_max;
if(valor < 0)
return 0;
return valor;
}
En comentarios te coloque algunas aclaraciones

Otra alternativa es que puedes implementar la función antes del main
int v_max(int x, int y)//cambie el nombre a los parametros para mostrar lo q habia comentado anterior mente
{
if(x > y)
return y;
if(x < 0)
return 0;
return x;
}
int main()
{
int valor_1 = 1500;
int valor_max_1 = 1000;
int valor;
valor = v_max(valor_1, valor_max_1);
}
Espero te sea de ayuda
Salu2
