#include // Define uma struct Pessoa, que contem os dados // (atributos) de uma pessoa, do ponto de vista deste programa. // Repare que "struct Pessoa" passa a ser um novo tipo de dados ! struct Pessoa { char nome[32]; char sobrenome[32]; int idade; }; // Uma funcao para mostrar os dados de uma variavel do tipo "struct Pessoa". void mostra_pessoa(struct Pessoa pessoa) { printf("Nome: %s\n", pessoa.nome); printf("Sobrenome: %s\n", pessoa.sobrenome); printf("Idade: %d\n", pessoa.idade); } // Uma funcao para ler do teclado os dados de uma pessoa struct Pessoa ler_pessoa() { struct Pessoa umaPessoa; printf("Nome: "); scanf(" %[^\n]", umaPessoa.nome); printf("Sobrenome: "); scanf(" %[^\n]", umaPessoa.sobrenome); printf("Idade: "); scanf("%d", &umaPessoa.idade); return umaPessoa; } int main() { struct Pessoa cadastro[10]; int i; int cadastradas = 0; char opcao = 'S'; i = 0; while ((i < 10) && ((opcao == 'S') || (opcao == 's'))) { printf("Digite os dados da pessoa %d: \n", i+1); cadastro[i] = ler_pessoa(); cadastradas = cadastradas + 1; i = i + 1; printf("Continua (S/N) ? "); scanf(" %c", &opcao); puts(""); } printf("Voce cadastrou %d pessoas\n", cadastradas); printf("As pessoas cadastradas sao: \n\n"); i = 0; while (i < cadastradas) { mostra_pessoa(cadastro[i]); printf("\n"); i = i + 1; } return 0; }