Coincé en un prog d'occurrence en C !!
mafia_boy
Messages postés
104
Date d'inscription
Statut
Membre
Dernière intervention
-
mafia_boy Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
mafia_boy Messages postés 104 Date d'inscription Statut Membre Dernière intervention -
Bonsoir,
Alors mon problème est dans la deuxième partie du programme, compter le nombre d'occurrence du mot dans la chaîne, ça commence à me tapper sur les nerfs :S
Programme:
"Ecrire un programme C permettant de saisir un mot et une phrase tous les deux non vides, de les convertir en majuscule, et d'afficher si le mot existe ou non dans la phrase et si oui avec quel nombre d'occurrences."
Voici mon travail :
"#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<string.h>
int main ()
{
char c[100], t[100];
int i,nbr,l;
/* Saisir d'une phrase */
do
{printf ("donner une phrase : ");
gets (c);}
while (strlen(c)==0);
/* Saisir d'un mot */
do
{printf ("donner un mot : ");
gets (t);}
while (strlen(t)==0);
/*Convertir la phrase en Majuscule */
for (i=0;c[i];i++)
c[i]=toupper(c[i]);
/*Convertir le mot en Majuscule */
for (i=0;t[i];i++)
t[i]=toupper(t[i]);
/*L'existance d'un mot dans une phrase*/
nbr=0;
{if(strstr(c,t)==0)
{printf (" <%s> n'existe pas dans <%s> \n",t,c);}
else
{
nbr++;
printf (" <%s> existe %d dans <%s> \n",t,nbr,c);
}
}
}
"
Merci pour votre aide !
Alors mon problème est dans la deuxième partie du programme, compter le nombre d'occurrence du mot dans la chaîne, ça commence à me tapper sur les nerfs :S
Programme:
"Ecrire un programme C permettant de saisir un mot et une phrase tous les deux non vides, de les convertir en majuscule, et d'afficher si le mot existe ou non dans la phrase et si oui avec quel nombre d'occurrences."
Voici mon travail :
"#include<stdio.h>
#include<conio.h>
#include<ctype.h>
#include<string.h>
int main ()
{
char c[100], t[100];
int i,nbr,l;
/* Saisir d'une phrase */
do
{printf ("donner une phrase : ");
gets (c);}
while (strlen(c)==0);
/* Saisir d'un mot */
do
{printf ("donner un mot : ");
gets (t);}
while (strlen(t)==0);
/*Convertir la phrase en Majuscule */
for (i=0;c[i];i++)
c[i]=toupper(c[i]);
/*Convertir le mot en Majuscule */
for (i=0;t[i];i++)
t[i]=toupper(t[i]);
/*L'existance d'un mot dans une phrase*/
nbr=0;
{if(strstr(c,t)==0)
{printf (" <%s> n'existe pas dans <%s> \n",t,c);}
else
{
nbr++;
printf (" <%s> existe %d dans <%s> \n",t,nbr,c);
}
}
}
"
Merci pour votre aide !
A voir également:
- Coincé en un prog d'occurrence en C !!
- Robot prog - Télécharger - Édition & Programmation
- Grain de riz coincé dans iphone - Forum iPhone
- Cd coincé dans chaine hifi - Forum Enceintes / HiFi
- Supprimer occurrence word ✓ - Forum Word
- Cable ethernet coincé ✓ - Forum Matériel & Système
3 réponses
Mais ton programme fonctionne bien... enfin disons qu'il fait ce qu'on lui demande!
Je pense que tu as oublié de faire une boucle.
J'aurais plutôt terminé le programme par:
Bonne continuation.
Je pense que tu as oublié de faire une boucle.
J'aurais plutôt terminé le programme par:
/*L'existence d'un mot dans une phrase*/ nbr=0; char* ptr = c; while (ptr) if( (ptr = strstr(ptr,t)) ) { nbr++; ptr += strlen(t); } if (nbr) printf (" <%s> existe %d fois dans <%s> \n", t, nbr, c); else printf (" <%s> n'existe pas dans <%s> \n", t, c); return EXIT_SUCCESS;Enfin ce n'est que mon humble avis.
Bonne continuation.