Scanf d'une structure imbriqée
Résolu
Echap_Ax
-
sesamizo Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
sesamizo Messages postés 18 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
j'ai rencontré beaucoup des problèmes avec les structures
je voudrai vous demander comment faire un appel d'une structure dans une autre pour
comment appliqué scanf pour remplir un tableau de structure se type de programme
merci a vous tous
voila mon code:
je suis sous winvista sp1/ compilateur devc++
merci a vous tous
j'ai rencontré beaucoup des problèmes avec les structures
je voudrai vous demander comment faire un appel d'une structure dans une autre pour
comment appliqué scanf pour remplir un tableau de structure se type de programme
merci a vous tous
voila mon code:
#include<stdio.h> #include<conio.h> #define const max; typedef struct horaire{ int h; int mn; int s; }horaires; typedef struct bus { int num; char nom; char dep; char arr; struct horaires ; }BUS; main() { int max=0; int i,x; struct bus t[max]; for(i=0;i<10;i++) { printf("donner le numéro de bus\n"); scanf("%d",&t[i].num); printf("donner l'heure de départ\n"); scanf("%d",&t[i].horaires.h); printf("donner minute de départ\n"); scanf("%d",t[i].horaires.mn); printf("donner seconde de départ\n"); scanf("%d",t[i].horaires.s); printf("l'heure d'arrivée\n"); scanf("%d",&t[i].horaires.h); printf("minute d'arrivée\n"); scanf("%d",&t[i].horaires.mn); printf("seconde d'arrivée\n"); scanf("%d",&t[i].horaires.s); } { printf("donner le numero de bus\n"); scanf("%d",&x); while(t[i].num != x)
je suis sous winvista sp1/ compilateur devc++
merci a vous tous
A voir également:
- Scanf d'une structure imbriqée
- Logiciel calcul structure bois gratuit - Télécharger - Architecture & Déco
- Structure d'un rapport de stage - Guide
- Scanf en java ✓ - Forum Java
- Dans son restaurant, igor utilise une application pour gérer les réservations. dans le schéma (structure) de la base de données de l’application représenté ci-dessous : de quoi « telephone » est-il le nom ? de quoi « reservations » est-il le nom ? associez chaque terme avec un attribut, une donnée, un enregistrement, une table, une valeur ou une variable. - Forum Webmastering
- Trouvez l'erreur dans la structure du document et corrigez-la. - Forum Word
3 réponses
oui...
il te faudrait faire des variables h,mn,s depart et arrivee ou alors une structure horraire arrivee et une autre horraire depart
il te faudrait faire des variables h,mn,s depart et arrivee ou alors une structure horraire arrivee et une autre horraire depart
Bien sûr que oui.
Voila une petite rectification :
#include<stdio.h>
#include<conio.h>
typedef struct{
int h;
int mn;
int s;
}horaires;
typedef struct{
int num;
horaires hor_depart; // horaires de depart
horaires hor_arr; // et d'arrivée
}BUS;
main()
{
int i,x;
BUS t[10];
for(i=0;i<10;i++)
{
printf("donner le numéro de bus\n");
scanf("%d",&t[i].num);
//Depart
printf("donner l'heure de départ\n");
scanf("%d",&t[i].hor_depart.h);
printf("donner minute de départ\n");
scanf("%d",&t[i].hor_depart.mn);
printf("donner seconde de départ\n");
scanf("%d",&t[i].hor_depart.s);
//Arrivee
printf("l'heure d'arrivée\n");
scanf("%d",&t[i].hor_arr.h);
printf("minute d'arrivée\n");
scanf("%d",&t[i].hor_arr.mn);
printf("seconde d'arrivée\n");
scanf("%d",&t[i].hor_arr.s);
}
}
Voila une petite rectification :
#include<stdio.h>
#include<conio.h>
typedef struct{
int h;
int mn;
int s;
}horaires;
typedef struct{
int num;
horaires hor_depart; // horaires de depart
horaires hor_arr; // et d'arrivée
}BUS;
main()
{
int i,x;
BUS t[10];
for(i=0;i<10;i++)
{
printf("donner le numéro de bus\n");
scanf("%d",&t[i].num);
//Depart
printf("donner l'heure de départ\n");
scanf("%d",&t[i].hor_depart.h);
printf("donner minute de départ\n");
scanf("%d",&t[i].hor_depart.mn);
printf("donner seconde de départ\n");
scanf("%d",&t[i].hor_depart.s);
//Arrivee
printf("l'heure d'arrivée\n");
scanf("%d",&t[i].hor_arr.h);
printf("minute d'arrivée\n");
scanf("%d",&t[i].hor_arr.mn);
printf("seconde d'arrivée\n");
scanf("%d",&t[i].hor_arr.s);
}
}
si tu utilises des typedef, dans ta deuxieme structure il te suffit de faire sa
apres pour utilisé tes scanf par exemple
typedef struct bus { int num; char nom; char dep; char arr; horaires horr; }BUS;pareil quand tu definis ton tableau de struct tu peux utiliser directement le nouveau type
BUS t[MAX];ton define aussi n'est pas correcte c'est plutot
#define MAX 10
apres pour utilisé tes scanf par exemple
scanf("%d",&t[i].horr.h);
merci beaucoup une bonne réponse et très claire,mais j'ai u tout petit problème avec la structure horaires est ce que l'enregistrement correcte avec cette lecture "c'est a dire l'horaire d'arrivée en h,mn,s écrase l'horaire de départ" ?
for(i=0;i<max;i++)
{
printf("donner le numéro de bus\n");
scanf("%d",&t[i].num);
printf("donner l'heure de départ\n");
scanf("%d",&t[i].horaires.h);
printf("donner minute de départ\n");
scanf("%d",t[i].horaires.mn);
printf("donner seconde de départ\n");
scanf("%d",t[i].horaires.s);
printf("l'heure d'arrivée\n");
scanf("%d",&t[i].horaires.h);
printf("minute d'arrivée\n");
scanf("%d",&t[i].horaires.mn);
printf("seconde d'arrivée\n");
scanf("%d",&t[i].horaires.s);
}
for(i=0;i<max;i++)
{
printf("donner le numéro de bus\n");
scanf("%d",&t[i].num);
printf("donner l'heure de départ\n");
scanf("%d",&t[i].horaires.h);
printf("donner minute de départ\n");
scanf("%d",t[i].horaires.mn);
printf("donner seconde de départ\n");
scanf("%d",t[i].horaires.s);
printf("l'heure d'arrivée\n");
scanf("%d",&t[i].horaires.h);
printf("minute d'arrivée\n");
scanf("%d",&t[i].horaires.mn);
printf("seconde d'arrivée\n");
scanf("%d",&t[i].horaires.s);
}