123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- #include "lista_ord.h"
- int imprime_op()
- {
- int op;
- do
- {
- printf("---------------- Qual a operacao? -----------------\n");
- printf("Lista Ordenada...\n");
- printf("[1] - Inserir um elemento à lista\n");
- printf("[2] - Remover um elemento da lista\n");
- printf("[3] - Intercalar elementos\n");
- printf("[4] - Remover os elementos pares\n");
- printf("[5] - Mostrar o maior elemento da lista\n");
- printf("[6] - Mostrar a quantidade de elementos da lista\n");
- printf("[7] - Verificar se as listas são iguais\n");
- printf("[8] - Imprimir lista atual\n");
- printf("[9] - Sair do programa\n");
- printf("Operacao: "); setbuf(stdin,NULL);
- scanf("%d", &op);
- } while(op < 0 || op > 11);
- return op;
- }
- int main(void)
- {
- int elemento, op = -1;
- Lista L1 = cria_lista();
- system("clear");
- while(op != 10)
- {
- op = imprime_op();
- switch(op)
- {
- case 1:
- printf("Elemento a ser inserido: ");
- scanf("%d", &elemento);
- if(insere_ord(L1, elemento))
- printf("Elemento inserido!\n");
- else
- printf("Elemento nao inserido!\n");
- getchar();
- break;
- case 2:
- printf("Qual elemento sera removido? ");
- scanf("%d", &elemento);
- if(remove_ord(L1, elemento))
- printf("Elemento removido\n");
- else
- printf("Elemento nao removido\n");
- getchar();
- break;
- case 3:
- printf("Intercalando listas...\n");
- //scanf("%d", &elemento);
- if(intercala_lista(L1, L2))
- printf("Elementos intercalaods!\n");
- else
- printf("Os elementos não foram intercalaods\n");
- break;
- case 4:
- printf("Removendo elementos pares...\n");
- if(insere_inicio(L1, elemento))
- printf("Os elementos pares foram removidos!\n");
- else
- printf("Os elementos pares não foram removidos!\n");
- break;
- case 5:
- maior_elem_lista(L1);
- break;
- case 6:
- tamanho_lista(L1);
- break;
- case 7:
- if(is_lista_igual(L1,L2))
- printf("As listas são iguais.\n");
- else
- printf("As listas nao são iguais.\n");
- break;
- case 8:
- system("clear");
- imprime_lista(L1);
- break;
- }
- setbuf(stdin,NULL);
- if(op == 10)
- return 0;
- getchar();
- system("clear");
- }
- free(L1);
- free(L2);
- return 0;
- }
|