Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Cornelius

[Resolvido] ordenar nomes

Recommended Posts

Olá, boa tarde, estou com dúvida num código que estou montando que no processo de ordenação da função bolha() acontece um resultado curioso, segue o código:

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define t 3

struct cadastro{
	   char v[10];
};

int i;
cadastro go[3];


//void recebe();
	 
void recebe(){
	 for(i=0; i<t; i++){
			  printf("Digite o %d nome: ", i+1);
			  scanf("%s", &go[i].v);
	 }
}

void bolha(){ // função bolha
	 int cont=1, j=0, aux1, aux2;
	 char char_aux[10];
	 while(cont==1){ //while
		 cont=0;		   
		 for(i=0; i<t-1; i++){ //for i   
						go[i].v[j] = (int)aux1; // essa atribuição faz o char do vetor "sumir"
						go[i+1].v[j] = (int)aux2; // essa atribuição faz o char do vetor "sumir"
						
						if(aux1>aux2){ //para saber qual letra é alfabeticamente a primeira
							  strcpy(char_aux, go[i].v);
							  strcpy(go[i].v, go[i+1].v);
							  strcpy(go[i+1].v, char_aux);
							  cont=1;
							  break;
						}
		 } //for i
	 } //while
} // função bolha

void exibe(){
	 printf("Os numeros sao: ");
	 for(i=0; i<t; i++){
			  printf("%s", go[i].v);
			  if(go[i+1].v!=0){
				   printf(", ");
			  }
			  else{
				   printf(".");
			  }
	 } 
}		 
			  

int main(){
	recebe();
	bolha();
	exibe();
	
	 
	 system("pause");
}

Obrigado http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá, engraçado ne, acabei de postar vi o erro do código http://forum.imasters.com.br/public/style_emoticons/default/pinch.gif ... eis o problema:

 

go[i].v[j] = (int)aux1; // essa atribuição faz o char do vetor "sumir"
go[i+1].v[j] = (int)aux2; // essa atribuição faz o char do vetor "sumir"

devia ser assim:

 

aux1 = (int)go[i].v[j]; 
aux2 = (int)go[i+1].v[j];

Eu estava fazendo uma atribuição inversa http://forum.imasters.com.br/public/style_emoticons/default/assobiando.gif

 

Obrigado gente http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.