A voir également:
- Question en programmation c
- Application de programmation - Guide
- Mettre en veille un programme - Guide
- Programmer en basic sous windows 10 - Télécharger - Édition & Programmation
- Un autre programme est en cours d'installation - Forum Windows 10
- Programmation vb - Télécharger - Langages
2 réponses
Hello,
Remarque pour le code :
Ton printf final est mal utilisé. T'as oublié de spécifier le format "%s".
De plus attention à l'utilisation de scanf, surtout pour les chaînes de caractères. Donne au moins la taille maximale dans le format ou utilise fgets.
Lorsque tu fais : scanf(e[i].lejour); en dehors des boucles for, i vaudra 5. Tu es donc en dehors du tableau. Tu as aussi oublié de spécifier "%s".
La taille pour tes libellés est trop petite. Il ne faut pas oublier la place pour le \0 final.
Et enfin la fonction main() renvoie un int.
Remarque algorithmique :
Toujours concernant le scanf(e[i].jour), tu vas récrire dans la structure. Tu ne pourras pas connaître l'emploi du temps de la journée rentrée par l'utilisateur. Il faudrait utiliser un buffer et effectuer une comparaison avec strcmp pour savoir quelle journée affichée.
Cdlt
Remarque pour le code :
Ton printf final est mal utilisé. T'as oublié de spécifier le format "%s".
De plus attention à l'utilisation de scanf, surtout pour les chaînes de caractères. Donne au moins la taille maximale dans le format ou utilise fgets.
Lorsque tu fais : scanf(e[i].lejour); en dehors des boucles for, i vaudra 5. Tu es donc en dehors du tableau. Tu as aussi oublié de spécifier "%s".
La taille pour tes libellés est trop petite. Il ne faut pas oublier la place pour le \0 final.
Et enfin la fonction main() renvoie un int.
Remarque algorithmique :
Toujours concernant le scanf(e[i].jour), tu vas récrire dans la structure. Tu ne pourras pas connaître l'emploi du temps de la journée rentrée par l'utilisateur. Il faudrait utiliser un buffer et effectuer une comparaison avec strcmp pour savoir quelle journée affichée.
#include <stdio.h> #include <string.h> struct seance { char libelle [3]; char matiere [30]; }; struct jour { char lejour[20]; struct seance s[5]; }; int main(void) { struct jour e[5]; char jour[20]; int i,j; for(i=0;i<5;i++) { printf ("donner le jour : "); scanf("%19s",e[i].lejour); for (j=0;j<5;j++) { printf("donner la libelle : "); scanf("%2s",e[i].s[j].libelle); printf("donner la matiere : "); scanf("%29s",e[j].s[j].matiere); } } printf("donner le jour") ; scanf("%19s",jour); printf("votre emploi de temp est : \n"); for (i=0;i<5;i++) { if(strcmp(jour,e[i].lejour)==0) for (j=0;j<5;j++) { printf("%s:%s\n",e[i].s[j].libelle,e[j].s[j].matiere); } } return 0; }
Cdlt
j'ai des erreur dans la dernière partie, comment je fais?
#include<stdio.h>
#include<conio.h>
struct seance
{ char libelle [2];
char matiere [30];
};
struct jour
{ char lejour[20];
struct seance s[5];
};
main()
{
struct jour e[5] ;
int i,j ;
for(i=0;i<5;i++ )
{
printf ("donner le jour");
scanf("%s",e[i].lejour);
{
for (j=0;j<5;j++)
{
printf("donner la libelle ");
scanf("%s",e[i].s[j].libelle);
printf("donner la matiere");
scanf("%s",e[j].s[j].matiere);
}
}
}
printf("donner le jour") ;
scanf(e[i].lejour);
printf("votre emploi de temp est");
for (i=0;i<5;i++)
{
for (j=0;j<5;j++)
{
printf ( e[i].s[j].libelle,":",e[j].s[j].matiere ) ;
}
}
getch() ;
}
#include<stdio.h>
#include<conio.h>
struct seance
{ char libelle [2];
char matiere [30];
};
struct jour
{ char lejour[20];
struct seance s[5];
};
main()
{
struct jour e[5] ;
int i,j ;
for(i=0;i<5;i++ )
{
printf ("donner le jour");
scanf("%s",e[i].lejour);
{
for (j=0;j<5;j++)
{
printf("donner la libelle ");
scanf("%s",e[i].s[j].libelle);
printf("donner la matiere");
scanf("%s",e[j].s[j].matiere);
}
}
}
printf("donner le jour") ;
scanf(e[i].lejour);
printf("votre emploi de temp est");
for (i=0;i<5;i++)
{
for (j=0;j<5;j++)
{
printf ( e[i].s[j].libelle,":",e[j].s[j].matiere ) ;
}
}
getch() ;
}
Merci pour ch@im@.
Cdlt.
Je suis content que fiddy t'ai apporté des solutions.
fiddy c'est le genre "d'entité" qui arrive à t'apporter des solutions à des problèmes qui n'existent pas - c'est très fort non ??.
Bonne soirée ch@im@.