Professional Documents
Culture Documents
ava.unicarioca.edu.br/graduacao/pluginfile.php/249347/mod_resource/content/1/aula3.c
/*
ListasSimplesmenteEncadeadas
Desenvolvedor:SrgioAssunoMonteiro
Data:29/02/2016
*/
/**/
/**/
#include<stdio.h>
#include<stdlib.h>
/**/
structELista
{
intelem;
structELista*prox;
};
structEMonitor
{
structELista*prim;
structELista*fim;
intqtde;
};
/**/
voidcreate();
voidinserir(intelem);
intmenu();
voidimprimir();
/**/
structEMonitormonitor;
main()
{
create();
while(menu());
}
/**/
voidcreate()
{
monitor.prim=NULL;
monitor.fim=NULL;
monitor.qtde=0;
}
/**/
intmenu()
{
intopcao;
system("cls");
printf("\nDigite:");
printf("\n0.ParaSair");
printf("\n1.ParaInserir");
printf("\n2.ParaImprimir");
printf("\n");
scanf("%d",&opcao);
switch(opcao)
case0:return0;
case1:
{intelem;
printf("\nDigiteoelementoparainserirnalista:");
scanf("%d",&elem);
inserir(elem);
return1;
case2:
{intelem;
imprimir();
printf("\nPressionequalquerteclaparacontinuar");
system("pause");
return1;
http://ava.unicarioca.edu.br/graduacao/pluginfile.php/249347/mod_resource/content/1/aula3.c
1/2
12/09/2016
ava.unicarioca.edu.br/graduacao/pluginfile.php/249347/mod_resource/content/1/aula3.c
default:
printf("\nDigiteumaopcaoVALIDA!");
return1;
}
}
/**/
voidinserir(intelem)
{
structELista*p;
p=(structELista*)malloc(sizeof(structELista));
p>elem=elem;
p>prox=NULL;
monitor.qtde++;
/*verificasealistaehvazia*/
if(!monitor.prim)
monitor.prim=monitor.fim=p;
return;
/*inserirnoIniciodaLista*/
if(p>elem<monitor.prim>elem)
p>prox=monitor.prim;
monitor.prim=p;
return;
/*inserirnoFinaldaLista*/
if(p>elem>monitor.fim>elem)
monitor.fim>prox=p;
monitor.fim=p;
return;
/*InsercaoIntermediaria.Existem,pelomenos,doiselementos*/
structELista*aux;
aux=monitor.prim;
while((aux>prox>elem)<(p>elem))
aux=aux>prox;
p>prox=aux>prox;
aux>prox=p;
}
/**/
voidimprimir()
{
structELista*p;
p=monitor.prim;
while(p)
{
printf("\np>elem=[%d]",p>elem);
p=p>prox;
}
}
/**/
http://ava.unicarioca.edu.br/graduacao/pluginfile.php/249347/mod_resource/content/1/aula3.c
2/2