Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- int main() {
- Arvore *arvore, *menor;
- char op;
- int conteudo, cont, nivel, num;
- //recebe do usuario a quantidade de elementos a serem inserido na arvore
- arvore = NULL;
- do {
- system("cls");
- printf("Menu de opcoes para arvore binaria sobre vetores\n");
- printf(" \n1 - Inserir \n2 - Pesquisar \n3 - Mostrar \n4 - Remover \n5 - Conta Nos \n6 - Acha menor \n7 - Conta Niveis da arvore \n\n8 - Sair \n\nEscolha uma opcao:");
- op = getchar();
- fflush(stdin);//fflush(stdin);
- switch (op) {
- case '1' : printf("\nInserindo na arvore ...\n");
- printf("\nDigite um numero: ");
- scanf("%d", &conteudo);
- fflush(stdin);//fflush(stdin);
- if (!arvore)
- arvore = insereNaArvoreBinaria(arvore, arvore, conteudo);
- else insereNaArvoreBinaria(arvore, arvore, conteudo);
- getchar();
- break;
- case '2' : printf("\nPesquisando na arvore ...\n");
- if (!arvore) printf("Arvore vazia!!\n");
- else {
- printf("\nDigite um numero: ");
- scanf("%d", &conteudo);
- fflush(stdin);//fflush(stdin);
- if (pesquisaArvore(arvore, conteudo)) printf("Valor localizado na arvore\n");
- else printf("\nValor NAO localizado na arvore!!\n");
- }
- getchar();
- break;
- case '3' : printf("\nMostrando a arvore ...\n");
- if (arvore) imprimeArvore(arvore, 0);
- else printf("Arvore vazia!!\n");
- getchar();
- break;
- case '4' : printf("\nRemovendo elemento da arvore ...\n");
- if (!arvore) printf("Arvore vazia!!\n");
- else {
- printf("Digite um numero: ");
- scanf("%d", &conteudo);
- fflush(stdin);//fflush(stdin);
- if (deletaArvore(arvore, conteudo)) printf("Valor localizado na arvore\n");
- else printf("Valor NAO localizado na arvore!!\n");
- }
- getchar();
- break;
- case '5' : printf("\nContando os nos...\n");
- cont = contaNos(arvore);
- if(cont==0)
- printf("\nArvore vazia!!!");
- else printf("Numero de nos: %d", cont);
- getchar();
- break;
- case '6' : printf("\nProcurando Menor NO...\n");
- menor = achaMenor(arvore);
- if(menor)
- printf("\nMenor NO = %d", menor->conteudo);
- else printf("\nArvore vazia!!!");
- getchar();
- break;
- case '7' : printf("\nContando os Niveis da arvore...");
- printf("\nInforme a árvore:");
- scanf("%d", &nivel);
- num = contaNosNivel(nivel, arvore);
- if(num)
- printf("\nNumero de niveis da arvore %d = %d", nivel, num);
- else printf("\nArvore %d vazia!!!", nivel);
- getchar();
- break;
- case '8' : break;
- default : printf("\nOpcao invalida!\n\n");
- getchar();
- }
- } while(op != '8');
- return 1;
- }
- /* REMOCAO
- 1º Nó sem filho
- 2º Nó (esq/dir) TEM filho
- 3º Nó com 2 filhos
- */
Add Comment
Please, Sign In to add comment