Lenguaje C. ¿como crear una funcion que me permita eliminar el ultimo elemento de una estruct. elanz
Publicado por Jonathan Josue (2 intervenciones) el 24/01/2020 15:16:13
¿como crear una funcion que me permita en una estrutura enlazada eliminar el ultimo elemento haciendo uso del siguiente codigo?
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
#include <stdlib.h>
#include <stdio.h>
#define nuevo_nodo (struct nodo *)malloc(sizeof(struct nodo)) //tranformar tipo de estructura
struct nodo { //struct es un estructura en lenguaje c
int info; struct nodo *sig; //lo que esta entre llaves es lo que hay dentro de estrutura nodo
} *c, *p , *q; //apuntadores de estructuras nodo
int mostrar_nodo(struct nodo *s) {
printf("%d", s->info); return 0;//%d significa que muestre enla pantalla de x formato
}
int mostrar_lista(struct nodo *r) {
printf("{ "); mostrar_nodo(r);
while (r->sig!=NULL) {
printf(" , "); mostrar_ultimo(r->sig); r = r->sig;
}
printf(" }"); return 0;
}
int editar(struct nodo *d){
printf("{ "); mostrar_nodo(d);
while (d->sig!=NULL){
printf(" , "); editar(d->sig); d = d->sig;
}
}
int main() { c = nuevo_nodo;
c->info=36; p=nuevo_nodo; c->sig=p;
p->info=18; q=nuevo_nodo; p->sig=q;
q->info=45; p=nuevo_nodo; q->sig=p;
p->info=123; q=nuevo_nodo; p->sig=q;
q->info=9; p=nuevo_nodo; q->sig=p;
p->info=54; p->sig=NULL;
printf("\n\n "); mostrar_ultimo(c);
system("pause");
}
Valora esta pregunta


0