Lectura secuencial de un archivo de acceso aleatorio
#include <stdio.h> /* definición de la estructura datosCliente */ struct datosCliente { int numCta; /* número de cuenta */ char apellido[ 15 ]; /* apellido */ char nombre[ 10 ]; /* nombre */ double saldo; /* saldo */ }; /* fin de la estructura datosCliente */ int main() { FILE *ptrCf; /* apuntador de archivo credito.dat */ /* crea datosCliente con información predeterminada */ struct datosCliente cliente = { 0, "", "", 0.0 }; /* fopen abre el archivo; si no se puede abrir, sale del archivo */ if ( ( ptrCf = fopen( "credito.dat", "rb" ) ) == NULL ) { printf( "No pudo abrirse el archivo.n" ); } /* fin de if */ else { printf( "%-6s%-16s%-11s%10sn", "Cta", "Apellido", "Nombre", "Saldo" ); /* lee todos los registro del archivo (hasta eof) */ while ( !feof( ptrCf ) ) { fread( &cliente, sizeof( struct datosCliente ), 1, ptrCf ); /* despliega el registro */ if ( cliente.numCta != 0 ) { printf( "%-6d%-16s%-11s%10.2fn", cliente.numCta, cliente.apellido, cliente.nombre, cliente.saldo ); } /* fin de if */ } /* fin de while */ fclose( ptrCf ); /* fclose cierra el archivo */ } /* fin de else */ return 0; /* indica terminación exitosa */ } /* fin de main */
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 :)