Baixe o app para aproveitar ainda mais
Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
#include <stdio.h> #define TAMANHO 5 void adicionar(int valor); int quantidadeElementos(); int buscarPorIndice(int indice); int buscarPorValor(int valor); void excluir(int valor); void ordenar(); void expandir(); void menu(); int posicao = 0; int lista[TAMANHO]; int opcao; int numero; int indice; int l = 0; int main() { opcao = 0; while(opcao !=8) { menu(); switch(opcao) { case 1: printf("Digite o numero: "); scanf("%d", &numero); adicionar(numero); break; case 2: printf("A lista possui %d elementos.\n", quantidadeElementos()); break; case 3: printf("Digite o indice: "); scanf("%d", &indice); numero = buscarPorIndice(indice); if(numero == -1) printf("Indice invalido!\n"); else printf("Valor encontrado no indice %d = %d\n", indice, numero); break; case 4: printf("Digite o numero: "); scanf("%d", &numero); indice = buscarPorValor(numero); if(indice == -1) printf("Nao encontrei %d na lista!\n", numero); else printf("Encontreio valor %d no indice %d\n", numero, indice); break; case 5: printf("Digite o valor para excluir: "); scanf("%d", &numero); excluir(numero); break; case 6: printf("Ordenando...\n"); ordenar(); break; case 7: for(l=0; l < quantidadeElementos(); l++) printf("lista[%d]=%d\n", l, buscarPorIndice(l)); break; } } } void menu() { printf("1 - Adicionar\n"); printf("2 - Quantidade de Elementos\n"); printf("3 - Buscar por Indice\n"); printf("4 - Buscar por Valor\n"); printf("5 - Excluir\n"); printf("6 - Ordenar\n"); printf("7 - Listar\n"); printf("8 - Sair\n"); printf("Digite a sua opcao: "); scanf("%d", &opcao); } void adicionar(int valor) { if(posicao < TAMANHO) { lista[posicao] = valor; posicao++; } else printf("Lista cheia!\n"); } int quantidadeElementos() { return posicao; } int buscarPorIndice(int indice) { if(indice >= 0 && indice < posicao) return lista[indice]; else return -1; } int buscarPorValor(int valor) { int i = 0; for(i = 0; i < posicao; i++) if(lista[i] == valor) return i; return -1; } void excluir(int valor) { int i = 0; i = buscarPorValor(valor); if(i != -1) { for(; i < posicao - 1; i++) lista[i] = lista[i + 1]; posicao--; } else printf("Nao encontrei %d na lista!\n", valor); } void ordenar() { int i = 0; int j = 0; int aux = 0; for(i = 0; i < (posicao -1); i++) { for(j = i + 1; j < posicao; j++) { if(lista[i] > lista[j]) { aux = lista[i]; lista[i] = lista[j]; lista[j] = aux; } } } }
Compartilhar