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);
}
Desktop Linux ganha fôlego enquanto distros refinam experiência e segurança
Wayland em alta, IA em debate e novos ventos para distros e devices
Qt 6.10 e Python 3.14 puxam o ritmo do software livre nesta quarta
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Como mudar o nome de dispositivos Bluetooth via linha de comando
Adicionando o repositório backports no Debian 13 Trixie
Primeiras impressões do Debian 13 (25)
Meu Amigo não consegue entrar em meu mundo, via tailscale, hamachi e z... (1)