Paso de arreglo a funciones (2)

#include "conio.h"
#include "stdio.h"
#include "stdlib.h"
 
int mayor(int vec[],int n);
 
void main()
{
 int n,i;
 int *ptr;
 clrscr();
 printf("Numero de elementos: ");
 scanf("%d",&n);
 malloc(sizeof(int)*n); //malloc(4)
 for(i=0;i<n;i++)
 {
  printf("Elemento[%d]: ",i+1);
  scanf("%d",&ptr[i]);
 }
  printf("El mayor es: %d",mayor(ptr,n));
  free(ptr); //Liberar la memoria
  getch();
}
 
int mayor(int vec[],int n)
{
 int m,i;
 m=vec[0];
 for(i=1;i<n;i++)
  if(vec[i]>m)
   m=vec[i];
 return(m);
}
 

¿Has encontrado algún error? ¿Tienes la solución? Dejame tu correción ;-)

Antes de comentar: Gran parte de los ejercicios propuestos no tienen librerías debido a que Wordpress las eliminó al verlas como etiquetas HTML. Si sabes/tienes/conoces las librerías que hacen falta, déjalo en los comentarios. Y lo mas importante: Todos los ejemplos fueron realizados por personas con únicamente conocimiento básico del lenguaje, no de programación.

Otro punto importante: Si vas a sugerir un segmento de código en algún lenguaje debes hacerlo así:

  • Si es lenguaje C [c]Código en C[/c]
  • Si es lenguaje Pascal [pascal]Aquí dentro el código de Pascal[/pascal].

De esta manera el código coloreas el código.

Otro punto importante para muchos que sienten que se les ignora: Todos los comentarios los reviso y en su debido momento los apruebo, pero ojo con el con lo siguiente:

Me reservo el derecho de alterar, publicar o no los comentarios as´ como cambiar mis condiciones en el momento que así lo requiera.

¿estas de acuerdo? entonces adelante que ya te he quitado bastante tiempo leyendo esta basura de advertencias :)