Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- #include <stdlib.h>
- #include "pila.h"
- typedef struct {
- int legajo;
- char nombreYapellido [30];
- int edad;
- int anio;
- //año que cursa, recordar que no podemos utilizar la ñ para definir variables
- } stAlumno;
- void cargarArchivo(char nombreArchivo[20]);
- stAlumno cargarUnAlumno();
- void leerArchivo(char nombreArchivo[20]);
- void mostrarUnAlumno(stAlumno aux);
- int main()
- {
- char nombreArchivo[] = "alumnos.dat";
- cargarArchivo(nombreArchivo);
- return 0;
- }
- /*
- Crear una función que cargue un archivo de alumnos.
- Abrirlo de manera tal de verificar si el archivo ya está creado previamente.
- Cargar el archivo con 5 datos. Cerrarlo dentro de la función
- */
- void cargarArchivo(char nombreArchivo[20])
- {
- FILE * archi = fopen(nombreArchivo,"rb");
- if (archi == NULL) //el archi no esta!
- {
- archi = fopen(nombreArchivo,"wb");
- if (archi != NULL) //no hay error de escritura
- {
- int cantidadDeDatos = 2;
- int datosCargados = 0;
- for (datosCargados = 0;datosCargados<cantidadDeDatos;datosCargados++)
- {
- stAlumno aux = cargarUnAlumno();
- fwrite(&aux,sizeof(stAlumno),1,archi);
- }
- }
- }
- else
- {
- printf("el archi esta con datos\n");
- leerArchivo(nombreArchivo);
- }
- fclose(archi);
- }
- stAlumno cargarUnAlumno()
- {
- stAlumno aux;
- printf("ingrese legajo\n");
- fflush(stdin);
- scanf("%d",&aux.legajo);
- printf("ingrese nombre Y apellido \n");
- fflush(stdin);
- scanf("%s",&aux.nombreYapellido);
- printf("ingrese edad \n");
- fflush(stdin);
- scanf("%d",&aux.edad);
- printf("ingrese anio \n");
- fflush(stdin);
- scanf("%d",&aux.anio);
- return aux;
- }
- /*
- Crear una función que muestre por pantalla
- los registros de un archivo de alumnos. Modularizar.
- */
- void leerArchivo(char nombreArchivo[20])
- {
- FILE * archi = fopen(nombreArchivo,"rb");
- if (archi != NULL) //el archi esta!
- {
- stAlumno alumnoLector;
- while (fread(&alumnoLector,sizeof(stAlumno),1,archi)>0)
- {
- mostrarUnAlumno(alumnoLector);
- }
- }
- else
- {
- printf("el archivo no existeee\n");
- }
- }
- void mostrarUnAlumno(stAlumno aux)
- {
- printf("***************\n");
- printf("legajo -> %d\n",aux.legajo);
- printf("nombre Y apellido -> %s\n",aux.nombreYapellido);
- printf("edad -> %d\n",aux.edad);
- printf("anio -> %d\n",aux.anio);
- printf("***************\n");
- }
Advertisement
Add Comment
Please, Sign In to add comment