Pesquisar na Comunidade
Mostrando resultados para as tags ''vetor de struct''.
Encontrado 4 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
-
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
-
- trabalho em c
- c
- (e %d mais)
-
Ola Tudo bom?, Cheguei na famosa Matéria Estrutura de Dados na Faculdade, é estou com um duvida. Criei Uma struct e um vetor para armazenar os valores nele, ate então tudo certo, só que na hora de eu fazer a busca está me dando um erro, nem compila. || ERRO (39 40 C:\Users\Hugo Guedes\Documents\C\BuscaSequencial.c [Error] incompatible type for argument 2 of 'strcmp') || O código do programa #include <stdio.h> #include <string.h> int main(void){ struct Alunos { char nome[30]; float matematica, fisica, media; }; struct Alunos alunos[5]; int count; char Busca; for(count = 0 ; count < 5 ; count++) { fflush(stdin); printf("\nNome do aluno %d: ", count+1); gets(alunos[count].nome); printf("Nota de matematica: "); scanf("%f", &alunos[count].matematica); printf("Nota de fisica: "); scanf("%f", &alunos[count].fisica); alunos[count].media = (alunos[count].matematica + alunos[count].fisica)/2; } printf("\nExibindo nomes e medias:\n"); for(count = 0 ; count < 5 ; count++) { printf("\nAluno %d\n", count+1); printf("Nome: %s\n",alunos[count].nome); printf("Media: %.2f\n", alunos[count].media); } printf("\n Digite o nome do aluno a ser buscado: \n"); printf("Aluno: "); scanf("%c", &Busca); for(count = 0; count <= 5; count+1 || strcmp(Busca,alunos[count]) = 0 ){ // Erro esta aqui printf(" | "); } return 0; } -------------------------------- OBS: Não sou muito bom em C, Estudo para Area da WEB
- 2 respostas
-
- struct
- vetor de struct
- (e %d mais)