Podrías vaciar el buffer si no se introdució un número.
Código C:
Ver original#include <stdio.h>
#define ELEMENTOS 5
int main()
{
int a[ELEMENTOS];
int n=0;
//Captura de los elementos del arreglo
do
{
printf("Ingrese el elemento %d: \n",n
+1); if (scanf(" %d",&a
[n
])==1) {
n++;
}else{
}
}while(n<ELEMENTOS);
}