Funções, Ponteiros e Struct
Publicado por gustavo 19/11/2005
[ Hits: 16.620 ]
Homepage: http://gustavopaes.net
Simples código que utiliza função, ponteiro e struct.
No geral ele faz o cadastro de usuários (código, nome, idade, altura) e possúi também uma busca.
#include <stdio.h>
#define MAX 3 /* numero de usuários */
/* dados da pessoa */
struct dados{
int codigo;
char nome[150];
int idade;
float altura;
};
/* função que faz o cadastro */
void Cadastro(struct dados *cad){
int x;
for(x=0; x<MAX; x++){
printf("Codigo: %d\n", cad[x].codigo = x);
printf("Nome: ");
scanf("%s", &cad[x].nome);
printf("Idade: ");
scanf("%d", &cad[x].idade);
printf("Altura: ");
scanf("%f", &cad[x].altura);
printf("\n");
}
}
/* função que faz a busca na struct */
int Busca(struct dados *busc, int codigo){
int x;
for(x=0; x<MAX; x++){
if(busc[x].codigo == codigo)
return x;
}
return -1;
}
int main(){
int x;
int ind;
int cod;
struct dados people[MAX];
/* CADASTRA USUÁRIOS */
Cadastro(people);
printf("\n######### BUSCA #########\n");
printf("Codigo: (-1 para sair)");
scanf("%d", &cod); /* pega código para buscar */
do{
ind = Busca(people, cod); /* busca aqui !!! */
if(ind > -1)
printf("Nome: %s\nIdade: %d\nAltura: %.2f\n\n", people[ind].nome, people[ind].idade, people[ind].altura);
else
printf("Usuario nao encontrado... !!!\n\n");
printf("Codigo: (-1 para sair)");
scanf("%d", &cod); /* pega código para buscar */
} while(cod >= 0);
return 0;
}
Parte 5 (ORDENANDO NUMEROS) - Sessão de estudo sobre MATRIZES
Problema de Equação do Primeiro Grau
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como quebrar senha usando john the ripper
[Resolvido] VirtualBox can't enable the AMD-V extension
Como verificar a saúde dos discos no Linux
Como instalar , particionar, formatar e montar um HD adicional no Linux?
Não consigo instalar distro antiga no virtualbox nem direto no hd (17)









