Problema con Codigo Cola Dinamica y Estructuras, ingresar nombre y edad a nodos en cola
Publicado por Patricio (25 intervenciones) el 08/04/2019 03:49:40
Estoy tratando de realizar el siguiente codigo pero no entiendo porque me esta dando error.
Gracias por la ayuda
Gracias por la ayuda
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define N 20
typedef struct persona{
char nombre[N];
int edad;
};
typedef struct nodo {
struct persona nueva_persona;
struct nodo *sig;
};
struct nodo *raiz=NULL;
struct nodo *ultimo=NULL;
int vacia()
{
if (raiz == NULL)
return 1;
else
return 0;
}
void insertar(struct persona ins_p)
{
struct nodo *nuevo = malloc(sizeof(struct nodo));
nuevo->nueva_persona = ins_p;
nuevo->sig=NULL;
if (vacia())
{
raiz = nuevo;
ultimo = nuevo;
}
else
{
ultimo->sig = nuevo;
ultimo = nuevo;
}
}
char extraer()
{
if (!vacia())
{
struct persona ext_per;
ext_per = raiz->nueva_persona;
struct nodo *primero = raiz;
if (raiz == ultimo)
{
raiz = NULL;
ultimo = NULL;
}
else
{
primero = raiz;
raiz = raiz->sig;
}
free(primero);
return ext_per;
}
else
return -1;
}
void imprimir()
{
struct nodo *recorre = raiz;
printf("\n\t Listado de todos las personas que restan en la cola.\n");
while (recorre != NULL)
{
printf("\n\t Nombre: %s y Edad: %d ", recorre->nueva_persona.nombre,recorre->nueva_persona.edad);
recorre = recorre->sig;
}
printf("\n");
}
int main()
{
printf ("\n\t Lista tipo cola en Memoria Dinamica ");
insertar('Pedro',19);
insertar('Trinidad',15);
insertar('Gerg',21);
insertar('Josefa',14);
imprimir();
extraer();//quito la primera persona que entro
imprimir();//imprimo la nueva lista, Pedro ya no esta
getch();
return 0;
}
Valora esta pregunta


0