Enviado em 16/03/2009 - 18:32h
ola pessoal sera q alguem pode me ajudar com esse algoritmo?????
Trata-se de cadastrar em uma empresa um determinado numero de funcionarios.No final devera ser impresso o funcionario com a respctiva data de nascimento o programa compila mas na hora de imprimir não imprime correrto alguem pode me ajudar....
eis o codigo fonte q eu estou utilizando
#include <stdio.h>
#include <conio.h>
#define MFUNC 2
#define MAX 100
typedef struct
{
int dia, mes, ano;
}tdata;
typedef struct
{
char nome[MAX];
tdata dtnasc;
}tpessoa;
typedef struct
{
tpessoa func;
tdata dtadm, dtdem;
}tfunc;
void lefunc (tfunc *pfunc);
void ledata (tdata *pdata);
void main (void)
{
tfunc funcionario[MFUNC];
int cont;
clrscr();
for(cont=0;cont<MFUNC;cont++)
{
lefunc(&funcionario[cont]);
}
for(cont=0;cont<MFUNC;cont++)
{
printf("%s",funcionario[cont].func.nome);
printf("%d",funcionario[cont].func.dtnasc.dia);
printf("%d",funcionario[cont].func.dtnasc.mes);
printf("%d",funcionario[cont].func.dtnasc.ano);
}
getch();
}
void ledata (tdata *pdata)
{
printf("dia");
scanf("%d",&pdata->dia);
printf("mes");
scanf("%d",&pdata->mes);
printf("ano");
scanf("%d",&pdata->ano);
}
void lefunc (tfunc *pfunc)
{
printf("digite o nome nome");
gets(pfunc->func.nome);
printf("digite a data de nascimento");
ledata(&pfunc->func.dtnasc);
}
Trata-se de cadastrar em uma empresa um determinado numero de funcionarios.No final devera ser impresso o funcionario com a respctiva data de nascimento o programa compila mas na hora de imprimir não imprime correrto alguem pode me ajudar....
eis o codigo fonte q eu estou utilizando
#include <stdio.h>
#include <conio.h>
#define MFUNC 2
#define MAX 100
typedef struct
{
int dia, mes, ano;
}tdata;
typedef struct
{
char nome[MAX];
tdata dtnasc;
}tpessoa;
typedef struct
{
tpessoa func;
tdata dtadm, dtdem;
}tfunc;
void lefunc (tfunc *pfunc);
void ledata (tdata *pdata);
void main (void)
{
tfunc funcionario[MFUNC];
int cont;
clrscr();
for(cont=0;cont<MFUNC;cont++)
{
lefunc(&funcionario[cont]);
}
for(cont=0;cont<MFUNC;cont++)
{
printf("%s",funcionario[cont].func.nome);
printf("%d",funcionario[cont].func.dtnasc.dia);
printf("%d",funcionario[cont].func.dtnasc.mes);
printf("%d",funcionario[cont].func.dtnasc.ano);
}
getch();
}
void ledata (tdata *pdata)
{
printf("dia");
scanf("%d",&pdata->dia);
printf("mes");
scanf("%d",&pdata->mes);
printf("ano");
scanf("%d",&pdata->ano);
}
void lefunc (tfunc *pfunc)
{
printf("digite o nome nome");
gets(pfunc->func.nome);
printf("digite a data de nascimento");
ledata(&pfunc->func.dtnasc);
}