Savoir si un mot est contenue dans un tableau de string
Sarah1609_2710
Messages postés
37
Statut
Membre
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour
Je rencontre un problème :
Je voudrais récupérer chaque activité de tab[i].activite pour savoir si elle contient le mot « gymnastique » la fonction doit me renvoyer vraie meme quand l’activité est matin gymnastique
Voici ce que j’ai essayé mais ça ne marche pas
Je voudrais récupérer chaque activité de tab[i].activite pour savoir si elle contient le mot « gymnastique » la fonction doit me renvoyer vraie meme quand l’activité est matin gymnastique
Voici ce que j’ai essayé mais ça ne marche pas
Je rencontre un problème :
def Struct {
Char activite [20];
Int jour;
}Organisation ;
Organisation tab[N]
Je voudrais récupérer chaque activité de tab[i].activite pour savoir si elle contient le mot « gymnastique » la fonction doit me renvoyer vraie meme quand l’activité est matin gymnastique
Voici ce que j’ai essayé mais ça ne marche pas
int i;
char *suiteChaine;
for (i=0;i<N;++i)
{
scanf("%s",tab[i].activite);
suiteChaine = strstr(tab[i].activite,"gymnastique");
if (suiteChaine != NULL)
{
printf("contient le mot gymnastique");
}
else{
printf("aucun mot ne contient gymnastique\n");
}
}
Typedef Struct {
Char activite [20];
Int jour;
}Organisation ;
Organisation tab[N]
Je voudrais récupérer chaque activité de tab[i].activite pour savoir si elle contient le mot « gymnastique » la fonction doit me renvoyer vraie meme quand l’activité est matin gymnastique
Voici ce que j’ai essayé mais ça ne marche pas
int i;
char *suiteChaine;
for (i=0;i<N;++i)
{
scanf("%s",tab[i].activite);
suiteChaine = strstr(tab[i].activite,"gymnastique");
if (suiteChaine != NULL)
{
printf("contient le mot gymnastique");
}
else{
printf("aucun mot ne contient gymnastique\n");
}
}
14 réponses
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
bonjour, "ça ne marche pas": qu'observes-tu?
as-tu fait printf de tes variables? -
Ca ne m’affiche rien enfaite... du coup je sais pas si deja ma méthode est juste pour récupérer les mots contenu dans tab[i].activite
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
as-tu déjà fait une programme plus simple, juste pour lire un texte? -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
un petit programme qui lit et qui affiche quelques phrases. -
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
et cela fonctionne? peux-tu montrer ce programme, pour comparer à celui qui ne fonctionne pas? -
-
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
peux-tu partager du texte, pas des images, et utiliser les balises de code: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
à quelle ligne as-tu le message d'erreur? -
void question7(confinement tab[N]){
int i;
char *suiteChaine=NULL;
char chaine[]="gymnastique";
for (i=0;i<N;++i)
{
scanf("%s",tab[i].activite);
suiteChaine = strstr(tab[i].activite,chaine);
if (suiteChaine != NULL)
{
printf("Le texte que vous recherchiez a ete trouve" );
}
else{
printf("Le texte que vous recherchiez n'a pas ete trouve\n");
}
} -
Ce code marche mais ne prend pas en compte les mots déjà rentrés dans tab[i].activite plus haut dans le
Programme et me demande de retaper tab[i].activite or moi je veux comparer tout les mots dans tab[i].activite et savoir si au moins un contient le mot gymnastique -
<code c>
</code>
void question7(confinement tab[N]){
char *suiteChaine=NULL;
char chaine[]="exemple";
char essai[]="exemple en maths";
suiteChaine = strstr(chaine,essai);
if (suiteChaine != NULL)
{
printf("Le texte que vous recherchiez a ete trouve" );
}
else{
printf("Le texte que vous recherchiez n'a pas ete trouve\n");
}
}
Exemple qui marche avec du texte -
yg_be Messages postés 23437 Date d'inscription Statut Contributeur Dernière intervention Ambassadeur 1 588
peux-tu choisir le langage "C" quand tu utilises les balises de code?
tu ne montres qu'une partie de ton programme.
le programme "demande" comment de retaper tab[i].activite? -
J’ai reussi je met mon programme si ça peut aider quelqu’un :
for (i=0;i<N:i++){ printf("\nsaisir l'activite\n"); scanf("%s",tab[i].activite); } int i; char *suiteChaine=NULL; char chaine[]="gymnastique"; for (i = 0; i < N; ++i) { if (tab[i].debutheure!=0 && tab[i].debutminute!=0 ){ suiteChaine = strstr(tab[i].activite,chaine); if (suiteChaine != NULL) { printf("Le texte que vous recherchiez a ete trouve" ); } else{ printf("Le texte que vous recherchiez n'a pas ete trouve\n"); } } } }
