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 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
| /* je suis persuadé qu'il faut revoir cette liste d'include */
#include <stdio.h>
#include <conio.h>
/* ici prochainement, un commentaire qui dira ce que ce programme est censé faire. */
/*
<nom du fichier>:
point d'entrée du programme, contient le main.
*/
/* le type étudiant */
typedef struct {
int code;
char nom;
char prenom;
} Etudiant;
/* ici prochainement, un commentaire qui dira ce que la fonction fait. */
void inscrire();
/* la logique du programme */
#define N 4
Etudiant etudiants[N];
/* ici prochainement, un commentaire qui dira ce que la fonction fait. */
void inscription ();
int main (){
inscription () ;
return 0;
}
/* les définitions des fonctions: */
/* vios comment je reprends les memes commentaires de section que plus haut.*/
/* le type étudiant */
void inscrire() {
Etudiant etudiant;
printf("REMPLIR LA STRUCTURE ETUDIANT\n");
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);
}
/* la logique du programme */
void inscription () {
int i;
/*
etudiants est une variable globale, que tu vas utiliser.
C'est mal, tu devrais utiliser les arguments.
*/
for (i=0; i<N; i++){
printf("\n-------- ETUDIANT NUMERO %d\t", i );
inscrire();
Etudiant *p;//et comment le remplis-tu, cet étudiant?
/*
p étant un pointeur non initialisé, ceci VA causer une segmentation fault.
*/
etudiants[i].code=p->code;
etudiants[i].nom=p->nom;
etudiants[i].prenom=p->prenom;
}
/* pas mal comme affichage, mais je rajoute une phrase d'introduction */
printf("Voici la liste des étudiants: \n");
for (i=0; i<N; i++) {
printf("\t[%d]\t%4d\t%s\t%s", i, etudiants[i].code, etudiants[i].nom, etudiants[i].prenom);
}
} |
Partager