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 ?
Code:#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)) } }
-----