Savoir si un mot est contenue dans un tableau de string
Sarah1609_2710
Messages postés
37
Statut
Membre
-
yg_be Messages postés 24281 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 24281 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");
}
}
A voir également:
- Savoir si un mot est contenue dans un tableau de string
- Tableau word - Guide
- Trier un tableau excel - Guide
- Trousseau mot de passe iphone - Guide
- Mot de passe - Guide
- Tableau ascii - Guide
14 réponses
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
bonjour, "ça ne marche pas": qu'observes-tu?
as-tu fait printf de tes variables?
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
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
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
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
un petit programme qui lit et qui affiche quelques phrases.
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
et cela fonctionne? peux-tu montrer ce programme, pour comparer à celui qui ne fonctionne pas?
yg_be
Messages postés
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
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?
à 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
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
24281
Date d'inscription
Statut
Contributeur
Dernière intervention
Ambassadeur
1 585
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?
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");
}
}
}
}
