Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá amigos,
Estou iniciando no forum e preciso de uma ajuda no código abaixo.
O programa deve receber nomes e idade numa função para inserir
na agenda e imprimi-los em ordem alfabética. exemplo
Entrada
id Nome idade
1 Paulo 13
2 Marcos 43
3 Antonio 65
Saída
3 Antonio 65
2 Marcos 43
1 Paulo 13
Obrigado !!!
#include <stdio.h>
#include <string.h>
#include <malloc.h>
typedef struct{
int idPessoa;
char nome[30];
int idade;
} agenda;
typedef char* string;
agenda *pessoas;
int qtdPessoas;
void iniciar(){
qtdPessoas = 0;
pessoas = malloc(sizeof(agenda));
}
agenda newPessoa(){
agenda tempPessoa;
printf("Digite um nome:");
fflush(stdin);
scanf("%s", tempPessoa.nome);
printf("Digite a idade:");
scanf("%d", &tempPessoa.idade);
return(tempPessoa);
}
void addPessoa(){
qtdPessoas++;
pessoas = realloc(pessoas, qtdPessoas*sizeof(agenda));
int indice = qtdPessoas-1;
pessoas[indice] = newPessoa();
pessoas[indice].idPessoa = indice;
}
void mostrarAgenda(){
int i = 0;
for (i=0; i < qtdPessoas; i++){
printf("\n%d\t%s\t%d", pessoas[i].idPessoa, pessoas[i].nome, pessoas[i].idade);
}
}
int main(int argc, char **argv){
addPessoa();
addPessoa();
addPessoa();
mostrarAgenda();
return (0);
}Carregando comentários...