Lista dupla

Run Settings
LanguageC
Language Version
Run Command
#include <stdio.h> #include <stdlib.h> /* Necess‡rio para a utiliza‹o da fun‹o malloc() */ typedef struct estru { int numero; struct estru *ante; struct estru *prox; } lista; void main() { lista *p, *q, *prim; p = (lista *) malloc(sizeof(lista)); p->ante = NULL; p->numero = 1; p->prox = NULL; q = p; prim = p; printf("A informacao armazenada e apontada pelo ponteiro e: %d\n", p->numero); p = (lista *) malloc(sizeof(lista)); p->ante = q; p->numero = 2; p->prox = NULL; q->prox = p; q = p; printf("A informacao armazenada e apontada pelo ponteiro e: %d\n", p->numero); p = (lista *) malloc(sizeof(lista)); p->ante = q; p->numero = 3; p->prox = NULL; q->prox = p; q = p; printf("A informacao armazenada e apontada pelo ponteiro e: %d\n", p->numero); p = (lista *) malloc(sizeof(lista)); p->ante = q; p->numero = 4; p->prox = NULL; q->prox = p; q = p; printf("A informacao armazenada e apontada pelo ponteiro e: %d\n", p->numero); p = (lista *) malloc(sizeof(lista)); p->ante = q; p->numero = 5; p->prox = NULL; q->prox = p; q = p; printf("A informacao armazenada e apontada pelo ponteiro e: %d\n\n", p->numero); // Exibir a lista a partir do primeiro n— p = prim; while(p->prox != NULL) { printf(" %d ->", p->numero); p = p->prox; } printf(" %d ->fim da lista\n\n", p->numero); // Exibir a lista a partir do œltimo n— printf(" %d ->", p->numero); p = p->ante; while(p->ante != NULL) { printf(" %d ->", p->numero); p = p->ante; } printf(" %d ->fim da lista\n\n", p->numero); }
Editor Settings
Theme
Key bindings
Full width
Lines