#include <stdio.h>
#include <stdlib.h>
#include<conio.h>
typedef struct estru
{
int numero;
struct estru *prox;
}lista;
int main()
{
lista*p, *q, *prim;
p = (lista *) malloc(sizeof(lista));
p -> numero = 1;
q = p;
prim = p;
printf("A informação armazenada e apontada pelo ponteiro e: %d\n", p->numero);
p = (lista*) malloc(sizeof(lista));
p->numero = 2;
q->prox = p;
q = p;
printf("A informação armazenada e apontada pelo poteiro e: %d\n", p->numero);
p = (lista*) malloc(sizeof(lista));
p->numero = 3;
q->prox = p;
q = p;
printf("A informação armazenada e apontada pelo poteiro e: %d\n", p->numero);
p = (lista*) malloc(sizeof(lista));
p->numero = 4;
q->prox = p;
q = p;
p->prox = NULL;
printf("A informação armazenada e apontada pelo poteiro e: %d\n", p->numero);
//Exibir a lista a partir do primeiro elemento
p = prim;
printf("%d ->", p->numero);
while(p->prox != NULL)
{
p = p->prox;
printf("%d -> ", p->numero);
}
getch();
return 0;
}