bonjour à tous , voilà je tombe dans une difficulté que je souhaite la fixer , voila mon programme , tout marche bien les structures , la fonction de saisie , sauf que la dernier fonction d'affichage "affiche" ne marche pas , ce que je cherche c'est pas de trouver autre solutions ou méthodes .. mais je cherche de faire l'affichage avec un pointeur ( la fonction affiche recevoir l'adresse du poiteur p qui est dans la fonction main ) apres la saisie de tous les infos , est ce que je peux afficher le contenu ? et comment ?
#include<stdio.h>
#include<stdlib.h>
typedef struct {
int jours;
int mois;
int annees;
}date;
typedef struct{
char nom[30];
char prenom[20];
int age;
int poids ;
date dt;
}et;
main(){
void etudEst(et* ,int );
void affiche(et* ,int );
int i,n;
et *p;
printf("Entrez la taille N de votre tableau \n");
scanf("%d",&n);
p=(et*)malloc(n*sizeof(et));
etudEst(p,n);
affiche(p,n);
}
void etudEst(et* pt,int m){
int i;
for(i=0;i<m;i++){
printf("[entrez votre nom]\n");
scanf("%s",(pt+i)->nom);
printf("[entrez votre prnom]\n");
scanf("%s",(pt+i)->prenom);
printf("[entrez votre age]\n");
scanf("%d",&(pt+i)->age);
printf("[entrez votre poids]\n");
scanf("%d",&(pt+i)->poids);
printf("[entrez votre date de naissance : jj/mm/yyyy ]\n ");
scanf("%d",&(pt+i)->dt.jours);
scanf("%d",&(pt+i)->dt.mois);
scanf("%d",&(pt+i)->dt.annees);
}
}
void affiche(et* ptt,int p){
int i ;
for(i=0;i<p;i++){
printf("L element [%d]\n",i);
printf("[nom]:\t%s\n",*(ptt+i)->nom);
printf("[Prenom]:\t%s\n",*(ptt+i)->prenom);
printf("[Age]:\t%d\n",(*(ptt+i))->age);
printf("[Poids]:\t%d\n",(*(ptt+i)->poids));
printf("[date]: \n [jours ] : %d \t [mois ] : %d \t [annees] : %d \t ",*(ptt+i)->dt.jours,*(ptt+i)->dt.mois,*(ptt+i)->dt.annees))
}
}
EDIT : correction des balises de code (la coloration syntaxique).