Bonjour tout le monde , j'ai un petit projet a faire qui consiste a implementer un tableau de structure de la maniere suivante :

1 - Declarer la structure pour presenter un nouveau type appelé Etudiant.

2 - Ecrire la fonction inscrire qui modifie les valeurs des champs d'un étudiant passant par le clavier.

3 - Declarer un tableau de N etudiant .

4- Ecrire la fonction inscription qui appele la fonction inscrire pour chaque Etudiant et l'insert dans ce tableau .

5 - Affichage tu tableau pour confirmer le resultat .

Bon j'ai commencé a codé mais j'ai eu des problemes au niveau de l'allocation en memoire du tableau de structures et surtout comment utiliser le resultat de la fonction inscrire pour l'inserer au tableau .

LE CODE :


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#include <stdio.h>
#include <conio.h>
#define N 4
typedef struct {
int code;
char nom;
char prenom;
}Etudiant;
Etudiant tab[N];
inscrire () {
Etudiant *p;
printf("REMPLIR LA STRUCTURE ETUDIANT\n");
p=(Etudiant*)malloc(sizeof(Etudiant));
scanf("%d%s%s",&p->code,&p->nom,&p->prenom);
printf("\nINSCRIRE RESULTAT : \n%d\t%s\t%s",p->code,&p->nom,&p->prenom);
free(p);
}
inscription () {
int i;
Etudiant * tab;
tab = malloc( N * sizeof(Etudiant));
for (i=0;i<N;i++){
    printf("\n-------- ETUDIANT NUMERO %d\t", i );
    inscrire();
    Etudiant *p;
    tab[i].code=p->code;
    tab[i].nom=p->nom;
    tab[i].prenom=p->prenom;
}
for (i=0;i<N;i++) {
    printf("\n le tableau %d : est %d \t %s \t %s",i,tab[i].code,tab[i].nom,tab[i].prenom);
}
free(tab);
}
 
int main (){
inscription () ;
return 0;
}

Merci .