Pesquisar na Comunidade
Mostrando resultados para as tags ''bubblesort em vetor''.
Encontrado 2 registros
-
Primeiro obrigado já pela ajuda, segundo estou aprendendo C agora. Estou fazendo um Trabalho em c, em que preciso ordenar o vetor de struct, fiz a função bubblesort, o programa compila certinho mas quando apresento o vetor ordenado ele embaralha tudo. Segue o código abaixo obs. não liguem pra meus comentários, e pra min não se perder rsr perguntas 1 - Como faço para na hora do BubbleSort está fazendo a troca ele perceba que o próximo índice do vetor esta vazio e pare? 2 - Também na hora de mostrar os dados do vetor ele perceba que o próximo índice está vazio? #include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> //Estrutura Clientes struct Clientes{ char nome[255]; int cpf; char telefone[50]; }; //Função ordena vetor CPF void BubbleSort(int n,struct Clientes *clientes){ int i,j; for (i=n-1; i>=1;i--){ for(j=0;j<i;j++){ if(clientes[j].cpf>clientes[j+1].cpf){ /*TROCA*/ char temp; temp = *clientes[j].nome; *clientes[j].nome = *clientes[j+1].nome; *clientes[j+1].nome = temp; int temp1; temp1 = clientes[j].cpf; clientes[j].cpf = clientes[j+1].cpf; clientes[j+1].cpf = temp1; char temp2; temp2 = *clientes[j].telefone; *clientes[j].telefone = *clientes[j+1].telefone; *clientes[j+1].telefone = temp2; } } } } //Função busca binaria //Função Cadastra void CadastrarCliente(struct Clientes *clientes){ int count = 0; int Op = 1; while (Op > 0){ printf("\n Digite o nome do cliente \n"); printf("\n NOME: "); scanf ( "%s", clientes[ count ].nome ); printf("\n Digite o CPF do cliente \n"); printf("\n CPF: "); scanf ( "%d", &clientes[ count ].cpf ); printf("\n Digite o Telefone do cliente \n"); printf("\n TELEFONE: "); scanf ( "%s", &clientes[ count ].telefone ); printf("\n Deseja Cadastrar mais um Cliente? \n"); printf("\n 1 - SIM || 0 - NAO \n"); printf("\n Escolha: "); scanf("%d", &Op); count++; } } //--------------- main(){ //Vetor de Cleintes struct Clientes clientes[50]; //------------------------- //Menu /*Variavel de Escolha*/ int Op = 1; while(Op > 0){ printf("\n .:: ----- Sistemas de Clientes ----- ::.\n"); printf("\n ::::::::::::: MENU ::::::::::::: \n"); printf("\n 1 - Cadastrar Clientes | 2 - Mostra Cadastros \n"); printf("\n Escolha: "); scanf("%d", &Op); //Cadastro Cliente if(Op == 1){ CadastrarCliente(clientes); } //Fim Cadastro Cliente if(Op == 2){ BubbleSort(50, clientes); int i=0; for(i;i<=4;i++){ printf("Nome: %s\n", clientes [ i ].nome ); // Mesma coisa quando for exibir ou guarda usar sempre ||Vetor[posiçao].dado|| printf("CPF: %d\n", clientes [ i ].cpf ); // Mesma coisa quando for exibir ou guarda usar sempre ||Vetor[posiçao].dado|| } } //Retorno para o menu ou sair do programa printf("\n Deseja Retornar ao Menu? | SIM - 1 Nao - 0 | Escolha: "); scanf("%d",&Op); system("cls"); } //Fim do Menu } obrigado já pela ajuda
- 1 resposta
-
- bubblesort em vetor de struct
- c
-
(e %d mais)
Tags:
- bubblesort em vetor de struct
- c
- vetor
- vetor de struct
- ordenar
- ordenar vetor
- ordenar vetor de struct
- bubblesort
- bubblesort em c
- bubblesort em vetor
- bubblesort em vetor de struc
- c++
- java
- html
- batman
- estrutura de dados
- algoritimo
- busca e ordenação
- estruturando dados
- ordenando o vetor
- ajuda
- como faço
- como faço para ordenar um vetor de struct
-
Primeiro obrigado já pela ajuda, segundo estou aprendendo C agora. Estou fazendo um Trabalho em c, em que preciso ordenar o vetor de struct, fiz a função bubblesort, o programa compila certinho mas quando apresento o vetor ordenado ele embaralha tudo. Segue o código abaixo obs. não liguem pra meus comentários, e pra min não se perder rsr perguntas 1 - Como faço para na hora do BubbleSort está fazendo a troca ele perceba que o próximo índice do vetor esta vazio e pare? 2 - Também na hora de mostrar os dados do vetor ele perceba que o próximo índice está vazio? #include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> //Estrutura Clientes struct Clientes{ char nome[255]; int cpf; char telefone[50]; }; //Função ordena vetor CPF void BubbleSort(int n,struct Clientes *clientes){ int i,j; for (i=n-1; i>=1;i--){ for(j=0;j<i;j++){ if(clientes[j].cpf>clientes[j+1].cpf){ /*TROCA*/ char temp; temp = *clientes[j].nome; *clientes[j].nome = *clientes[j+1].nome; *clientes[j+1].nome = temp; int temp1; temp1 = clientes[j].cpf; clientes[j].cpf = clientes[j+1].cpf; clientes[j+1].cpf = temp1; char temp2; temp2 = *clientes[j].telefone; *clientes[j].telefone = *clientes[j+1].telefone; *clientes[j+1].telefone = temp2; } } } } //Função busca binaria //Função Cadastra void CadastrarCliente(struct Clientes *clientes){ int count = 0; int Op = 1; while (Op > 0){ printf("\n Digite o nome do cliente \n"); printf("\n NOME: "); scanf ( "%s", clientes[ count ].nome ); printf("\n Digite o CPF do cliente \n"); printf("\n CPF: "); scanf ( "%d", &clientes[ count ].cpf ); printf("\n Digite o Telefone do cliente \n"); printf("\n TELEFONE: "); scanf ( "%s", &clientes[ count ].telefone ); printf("\n Deseja Cadastrar mais um Cliente? \n"); printf("\n 1 - SIM || 0 - NAO \n"); printf("\n Escolha: "); scanf("%d", &Op); count++; } } //--------------- main(){ //Vetor de Cleintes struct Clientes clientes[50]; //------------------------- //Menu /*Variavel de Escolha*/ int Op = 1; while(Op > 0){ printf("\n .:: ----- Sistemas de Clientes ----- ::.\n"); printf("\n ::::::::::::: MENU ::::::::::::: \n"); printf("\n 1 - Cadastrar Clientes | 2 - Mostra Cadastros \n"); printf("\n Escolha: "); scanf("%d", &Op); //Cadastro Cliente if(Op == 1){ CadastrarCliente(clientes); } //Fim Cadastro Cliente if(Op == 2){ BubbleSort(50, clientes); int i=0; for(i;i<=4;i++){ printf("Nome: %s\n", clientes [ i ].nome ); // Mesma coisa quando for exibir ou guarda usar sempre ||Vetor[posiçao].dado|| printf("CPF: %d\n", clientes [ i ].cpf ); // Mesma coisa quando for exibir ou guarda usar sempre ||Vetor[posiçao].dado|| } } //Retorno para o menu ou sair do programa printf("\n Deseja Retornar ao Menu? | SIM - 1 Nao - 0 | Escolha: "); scanf("%d",&Op); system("cls"); } //Fim do Menu } obrigado já pela ajuda
-
- bubblesort em vetor de struct
- c
-
(e %d mais)
Tags:
- bubblesort em vetor de struct
- c
- vetor
- vetor de struct
- ordenar
- ordenar vetor
- ordenar vetor de struct
- bubblesort
- bubblesort em c
- bubblesort em vetor
- bubblesort em vetor de struc
- c++
- java
- html
- batman
- estrutura de dados
- algoritimo
- busca e ordenação
- estruturando dados
- ordenando o vetor
- ajuda
- como faço
- como faço para ordenar um vetor de struct