Enviado em 09/07/2014 - 14:49h
void Ordenacao(){
// vetor de strings
char** nomes;
// de strings a serem comparadas
int qtd;
// contadores
int i,j;
struct pessoa umapessoa;
char* temp = (char*) malloc(40*sizeof(char));
nomes = (char**) malloc(qtd*sizeof(char*));
// posiciona o arquivo no inicio
fseek(arquivo,0,SEEK_SET);
i = 0;
qtd=0;
j = 0;
do{
// le de agenda.dat
fread(&umapessoa, sizeof(struct pessoa), 1, arquivo);
nomes[i] = (char*) malloc(40*sizeof(char));
nomes[i] = umapessoa.nome;
printf ("%d", qtd);
qtd++;
i++;
} while(!feof(arquivo));
// Rotina de ordenação
for(i = 1; i < qtd; i++) {
for (j = 0; j < qtd ; j++) {
if(strcmp(nomes[j],nomes[j+1]) > 0){
strcpy(temp,nomes[j]);
strcpy(nomes[j],nomes[j+1]);
strcpy(nomes[j+1],temp);
}
}
}
free(temp);
printf("Imprimindo os nomes ordenados\n");
for(i = 0; i < (qtd-1);++i) {
printf("%s\n",nomes[i]);
}
// liberando a memória alocada dinâmicamente
for(i = 0; i < qtd;++i) {
free(nomes[i]);
}
// liberando a memória alocada dinâmicamente
free(nomes);
}
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
Git config não aplica configurações
O que você quer para sua vida ao usar o Linux?
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
How Do I Batch Convert EML to PST Format for Outlook 2021? (0)
Teclado n~ao escreve abnt2 (14)