Professional Documents
Culture Documents
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
Dinamica
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
novo_cod->prox = NULL;
if (first == NULL)
{ first = novo_cod;
fim = novo_cod;
}
else
{ fim->prox = novo_cod;
fim = novo_cod;
}
printf("\n\nInserido com Sucesso!!!!\n");
printf("\nContinuar inserindo (1-sim/2-nao)? ");
scanf("%d",&continuar);
}while (continuar == 1);
}
void consultar()
{ int codic, continuar, achou=0;
do{ topo();
printf("\nConsulta cliente pelo codigo\n\n");
printf("\nCodigo: ");
scanf("%d",&codic);
presente = first;
while(presente != NULL)
{ if (presente->codi == codic)
{ achou = 1;
printf("\n\nCodigo Nome\n");
printf("----------------------------------\n");
printf("%9d %-20s\n",presente->codi, presente->nome);
printf("-----------------------------------\n");
break;
}
else
presente = presente->prox;
}
if (achou == 0)
printf("\n\nCliente nao encontrado!!\n");
printf("\nContinuar consultando (1-sim/2-nao)? ");
scanf("%d",&continuar);
}while (continuar == 1);
}
void remover()
{ C *noantrem;
int matr, confrem, continuar, achou;
do{ achou = 0;
topo();
printf("\nRemove cliente \n\n");
printf("\nCodigo: ");
scanf("%d",&matr);
presente = first;
while(presente != NULL)
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
{ if (presente->codi == matr)
{ achou = 1;
printf("\n\nCodigo Nome\n");
printf("------------------------------------\n");
printf("%9d %-20s\n",presente->codi, presente->nome);
printf("-------------------------------------\n");
printf("\n\nDeseja remover o cliente (1-sim, 2-nao)? ");
scanf("%d",&confrem);
if (confrem ==1)
{
if (presente == first)
first = first->prox;
else
{ noantrem->prox=presente->prox;
if (presente == fim)
fim=noantrem;
}
qtd--;
free(presente);
printf("\n\nRemovido com sucesso!\n");
}
else
printf("\n\nRemocao cancelada\n");
break;
}
else
{ noantrem = presente;
presente = presente->prox;
}
}
if (achou == 0)
printf("\n\nCliente nao encontrado!\n");
printf("\n\nDeseja remover novamente ? (1-sim, 2-nao)? ");
scanf("%d",&continuar);
}while (continuar ==1);
}
void listar ()
{ presente = first;
topo();
printf("\nLista de Cliente\n\n");
if (qtd != 0)
{ printf("\n\nCodigo Nome\n");
printf("-------------------------------\n");
while( presente != NULL)
{ printf("%9d %-20s\n",presente->codi, presente->nome);
presente = presente->prox;
}
printf("--------------------------------\n");
printf("\n\nQuantidade de Clientes = %d\n",qtd);
}
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
else
printf("\n\n Nao existe cliente cadastrado");
printf("\n\n\nTecle enter para voltar \n");
getche();
}
//menu principal
main()
{ qtd = 0;
do
{ topo();
printf("\n Menu de Opcoes: \n\n");
printf("\t1- Inserir novo Cliente\n\n");
printf("\t2- Remover Cliente\n\n");
printf("\t3- Consultar Cliente\n\n");
printf("\t4- Lista de Clientes\n\n");
printf("\t0- Sair do Programa\n\n\n");
L();
printf("Informe a Opcao desejada: ");
scanf("%d",&menu);
switch(menu)
{ case 1: inserir(); break;
case 2: remover(); break;
case 3: consultar(); break;
case 4: listar(); break;
case 0: break;
default
:
printf("\nOpcao
ERRADA!
Tecle
getche(); break;
}
}while(menu!=0);
presente = first;
while (presente != NULL)
{ first = presente->prox;
free(presente);
presente = first;
}
}
enter...");
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
<stdio.h>
<conio.h>
<string.h>
<stdlib.h>
Dinamica
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
novo_cod->prox = NULL;
if (first == NULL)
{ first = novo_cod;
fim = novo_cod;
}else
{ fim->prox = novo_cod;
fim = novo_cod;
}printf("\n\nInserido com Sucesso!!!!\n");
printf("\nContinuar inserindo (1-sim/2-nao)? ");
scanf("%d",&continuar);
}while (continuar == 1);
}void consultar()
{ int codic, continuar, achou=0;
do{ topo();
printf("\nConsulta cliente pelo codigo\n\n");
printf("\nCodigo: ");
scanf("%d",&codic);
presente = first;
while(presente != NULL)
{ if (presente->codi == codic)
{ achou = 1;
printf("\n\nCodigo Nome\n");
printf("----------------------------------\n");
printf("%9d %-20s\n",presente->codi, presente->nome);
printf("-----------------------------------\n");
break;
}
else
presente = presente->prox;
}
if (achou == 0)
printf("\n\nCliente nao encontrado!!\n");
printf("\nContinuar consultando (1-sim/2-nao)? ");
scanf("%d",&continuar);
}while (continuar == 1);
}
void remover()
{ C *noantrem;
int matr, confrem, continuar, achou;
do{ achou = 0;
topo();
printf("\nRemove cliente \n\n");
printf("\nCodigo: ");
scanf("%d",&matr);
presente = first;
while(presente != NULL)
{ if (presente->codi == matr)
{ achou = 1;
printf("\n\nCodigo Nome\n");
printf("------------------------------------\n");
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
Folha de Resposta
Ricael Spirandeli Rocha Estrutura de Dados
scanf("%d",&menu);
switch(menu)
{ case 1: inserir(); break;
case 2: remover(); break;
case 3: consultar(); break;
case 4: listar(); break;
case 0: break;
default
:
printf("\nOpcao
ERRADA!
Tecle
enter...");
getche(); break;
}}while(menu!=0);
presente = first;
while (presente != NULL){ first = presente->prox;
free(presente);presente = first;}
}