Código (c) [Seleccionar]
unsigned long int DNI;
unsigned long int fnac;
char apellido[64];
char nombres[64];
para que hacer un long con el DNI ya de por si solo con int es un numero grande, al igual que en apellido y nombres, a lo sumo no pasan de 20 a 25 caracreres por lo cual 64 es mucho con demasiado y es mas memoria que ocupada tu programa en ejecucion