Ir ao conteúdo

Posts recomendados

Postado

Fala ai glr, seguinte. Sou um aluno de C e meu professor mandou uma atividade em que eu tenho que fazer um programa que recebe o nome, endereço e telefone de 5 pessoas e depois imprime as informações na tela pela ordem alfabética do nome. Armazenar os dados foi fácil, o problema está em como fazer para descobrir a ordem alfabética dos nomes. Simplesmente não consigo pensar em nada e ja faz mais que uma semana que estou tentando fazer isso. Segue o código feito até agora:

 

Citação

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>

int main(void) {
    
    setlocale (LC_ALL, "Portuguese");
    
    struct pessoa{
        
        char nome[50], endereco[100], telefone[20];
    }p[5]; // p[5] porque tem 5 pessoas :)
    
    int i, o; // O "i" é para o contador e o "o" é para ver a ordem alfabética
    
    for(i = 0 ; i < 5 ; i++){
        
        printf("\n\n\tPessoa %d°", i + 1);
        
        printf("\n\t|(Até 50 caracteres) -- Nome:\t-");
        gets(p.nome);
        
        printf("\t(Até 100 caracteres) -- Endereço:\t-");
        gets(p.endereco);
        
        printf("\t(Até 20 caracteres) -- Telefone:\t-");
        gets(p.telefone);
        
        system("cls");
    } // Recebe o nome, endereço e telefone das 5 pessoas
    
    
    
    printf("\n\n\t");
    system("pause");
    
    return 0;
}

 

Se alguém conseguir pensar em alguma coisa por favor me dê uma luz. ;~;

Postado

@HwapX Ok, vou dar uma estudada na strcoll, ja conheço a strcmp mas ela só compara 2 strings, e pra fazer todas a 5 se compararem umas com as outras ia ser uma grande gambiarra.

Postado

@UmanoBlu a função strcoll tem o mesmo funcionamento da strcmp porém ela leva em conta as regras de localização.

 

 

E ordenar tudo de sem que você tenha nenhum trabalho não vai ser possível sem ajuda de uma biblioteca externa, você terá que realizar todas as comparações é assim que os algorítimos de ordenação(https://pt.wikipedia.org/wiki/Algoritmo_de_ordenação) mais básicos(https://pt.wikipedia.org/wiki/Bubble_sort) funcionam não é "gambiarra".

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!