Estrutura de dados
#include
#include
typedef struct elemento { int info; struct elemento *prox;
} no;
no *inicio, *novo, *fim, *aux,*aux1; int criado=0;
//----------protótipos------
void criar(); void insereInicio(); void imprimir(); void comprimento(); void excluirInicio(); void insmeio(no*t, int x); void remmeio(no*t); void insereFim(); void removeFim();
main(){
char i; int ax, auxinf; while(i != '\n'){ printf(" (1)-Criar uma lista\n"); printf(" (2)-Insere um elemento no inicio da lista\n"); printf(" (3)-Imprime a lista\n"); printf(" (4)-Imprime o comprimento da lista\n"); printf(" (5)-Retira um elemento do inicia da lista\n"); printf(" (6)-Insere no interior da lista\n"); printf(" (7)-Insere no fim da lista\n"); printf(" (8)-Remove no fim da lista\n"); printf(" (9)-Remove no interior da lista\n"); printf(" (S)-Sair\n"); i=getch();
switch(i){
case '1': criar(); getch(); clrscr(); break;
case '2': insereInicio(); break;
case '3': imprimir(); getch(); clrscr(); break;
case '4': comprimento(); break;
case '5': excluirInicio(); break;
case '6':
aux=inicio; printf("Digite o valor a ser encontrado"); scanf("%d",&auxinf); printf("Digite o valor a ser inserido"); scanf("%d",&ax); while(aux != NULL){ if (aux->info == auxinf){ insmeio(aux,ax); break; } aux=aux->prox; } break;
case '7': insereFim(); break;
case '8': removeFim(); break;
case '9':
aux=inicio; printf("Digite o valor a ser removido"); scanf("%d",&ax); while(aux != NULL){ if (aux->info == ax){ remmeio(aux); break; } aux=aux->prox; } break;