Red de conocimiento informático - Conocimiento informático - Código fuente de información del estudiante

Código fuente de información del estudiante

# incluir ltstdio.h gt

# incluir ltstdlib.h gt

# incluir ltstring.h gt

# incluir ltmalloc.h gt

estructura estudiante

{

int num

char nombre[20];

char tel[20];

estructura estudiante *siguiente;

};

estructura estudiante *head, *tmp1, *tmp2

int n;

Carga no válida()

{

ARCHIVO * FP 1;

int I;

fp1=fopen("archivo . txt "," Rb ");

Estructura estudiante * tmp

struct estudiante * q;

Printf("Empezar a leer la información del estudiante\n" );

cabeza = 0;

mientras(1){

tmp = malloc(tamaño de (estructura estudiante));

tmp - gt; next = 0;

//i=fscanf(fp1, "ID de estudiante: d Nombre: s Teléfono: s\n", (tmp->num), tmp- gt; nombre, tmp- gt; teléfono);

i=fread(tmp, sizeof(struct estudiante), 1, FP 1); >

if(head==0)

q = head = tmp

Printf("Leer la información de un estudiante\ n ");

q ->;siguiente = tmp

q = q- gt;siguiente;

}else{

fclose(FP 1

Regresar;

}

}

}

Salida no válida()

{

tmp 1 = encabezado;

And (tmp1!=0)

{

Printf("ID del estudiante: d Nombre: s Teléfono: s \n ", tmp 1-> num, tmp 1-> nombre, tmp 1->; teléfono);

tmp 1 = tmp 1-> siguiente;

}

}

Entrada no válida ( )

{ struct Student *q, * p;

Printf("Agregue la información del estudiante según sea necesario: \ n ");

p=malloc(sizeof(estructura estudiante));

Printf("Ingrese el número de estudiante: ");

scanf( "d", ampp->num);

printf("\nPor favor ingrese el nombre del estudiante: ");

scanf( "s ", p- gt; nombre);

printf ("\nIngrese el número de teléfono del estudiante: ");

scanf ("s", p- gt; teléfono ); >; siguiente = 0;

if(cabeza==0){

cabeza = p

q = p;

}de lo contrario{<

/p>

q = cabeza;

mientras(q->; siguiente!=0)

{

q = q- gt; ;

}

q->; siguiente = p;

q =

}

}

void delete()

{ struct Student *q, * p;

int numint I /*¿Qué artículo es num aquí */

Printf("Ingrese el registro I \ n ");

scanf("d ", ampnum

if(num ==1)

{ head = head- gt; next }/*Eliminar nodo principal*/

p = head;

for( I = 1; iltnum-1 ; I ) /*Mover p al nodo que se va a eliminar*/

{ p = p- gt;Next;}

if( num gt; 1)

p->; next = (p- gt; next)- gt; next; /*Por ejemplo, vincular 2 4 nodos y eliminar 3 nodos*/

Printf("Eliminación exitosa, por favor check\n ");

}

Búsqueda no válida()

{ char c[20] ;

char tmp 2 _ num[20];

Printf("Ingrese la información que desea consultar: \ n ");

scanf("s ", c

<); p>Printf("Lo que quieres consultar es:\n ");

tmp2 = header /*Traverse*/

And (tmp2!=0)

{

Printf("ID de estudiante: d Nombre: s Teléfono: s\n ", tmp 2- gt; num, tmp 2- gt; nombre, tmp 2- gt; teléfono) ;

if(strncacecmp(tmp 2- gt; nombre, c, strlen(c))==0)

Printf("nombre Coincidencia exitosa\n ");

/*Match*/

if(strncacecmp(tmp 2- gt;tel, c, strlen(c))==0)

Printf("Teléfono coincidencia exitosa\n");

sprintf(tmp2_num, "d",tmp2-gt;num);

if(strncacescmp( tmp 2 _ num, c, strlen(c ))==0)

Printf("El número de estudiante coincidió correctamente\ n ");

tmp 2 = tmp 2- gt;

}

}

void save()

{

ARCHIVO * FP 1

estructura estudiante *q; , * p 1;

fp1=fopen("archivo.txt ", " w ");

p 1 = 0

p 1 = cabeza;

if(head==0)

{

Printf("No hay información del estudiante ahora, agregue la información del estudiante primero:\n ") ;

}

Y (p1! =0)

{

//fprintf(fp1, "ID de estudiante: d Nombre: s Teléfono: s\n ", p 1- g

t; num, p 1-> nombre, p 1-> teléfono);

fwrite(p1, sizeof(struct Student), 1, FP 1); ID de estudiante: dNombre: sTeléfono: s\n", p 1- gt; num, p 1->; nombre, p 1->; teléfono);

p 1 = p 1 ->;Siguiente ;

}

fclose(FP 1);

}

Cambio no válido()

{ estructura estudiante * p;

int numint I; /*¿Cuál es el número de artículo aquí?*/

Printf("Ingrese el registro I que se va a modificar\n "); p>

scanf("d ", ampnum);

p = cabeza;

for(I = 1; i ltnumi )

{

p = p- gt; next;

}

Printf("ID del estudiante: dNombre: sPhone: s\ n ", p- gt; num, p-> nombre, p- gt; número de teléfono);

Printf("Modifique el número de estudiante: ");

Printf ("Por favor modifique el nombre del estudiante: ");

scanf ("s", p- gt; nombre); "Modifique el número de teléfono del estudiante: ");

scanf("s ", p- gt; teléfono

}

int main());

{

cabeza = tmp 1 = 0;

mientras(1)

{

printf( " \ n \ n ");

Printf ("\ t \ t * *Bienvenido al sistema de gestión de estudiantes* * \ n "); t * * Por favor ingrese la información correspondiente según se requiera * * \ n ");

Printf ("\ t \ t * * 0. Cargar información del estudiante * * \ n ");

Printf ("\ t \ t * * 1. Ver el estado del estudiante * * \ n ");

Printf ("\t\t*** 2. Agregar información del estudiante* * * \n ");

Printf("\t\t*** 3. Eliminar registros de estudiantes * * * \ n ");

Printf("\t\t*** 4. Consultar registros de estudiantes * * * \ n ");

Printf( "\t\t*** 5. Guardar información del estudiante * * * \ n");

Printf("\t\t*** 6. Modificar información del estudiante * * * \ n ") ;

Printf ("\ t \ t * * 7.

Salir * * * \ n ");

Printf("Seleccionar función: ");

scanf("d ", ampn);

Cambiar( n)

{

Caso 0:

carga();

Rotura;

Caso 1:

Salida();

Salida;

Caso 2:

Entrada();

Caso 3:

eliminar();

Romper

Caso 4:

buscar(); ;

Pausa;

Caso 5:

save();

Pausa;

Caso 6: Cambiar();

Romper

Caso 7:

Salir(0); >Valor predeterminado:

Printf("Esta función no está disponible temporalmente");