Probleme en c

Fermé
soukainaaaa Messages postés 2 Date d'inscription jeudi 17 décembre 2015 Statut Membre Dernière intervention 17 décembre 2015 - 17 déc. 2015 à 02:09
 azerty123456 - 17 déc. 2015 à 03:36
j' ai trouver un grand probléme en langage C.
je veus coupier les lignes d'un fichier a un tableau ,chaque ligne contient plusieurs mots ,il faus comparer les mots d chaque phrase avec une liste des mots? s'il est trouvé ok si nn retourner n'existe pas.
exemple
la phrase int x=2;
il fait separer int est dis que c'est un mot cle
x: un variable
=:separateur
2: un nombre entier;
.: un separateur

j'ai utiliser cette fonction pour coupier les information saisient par l utilisateur:
void lire_fichier()
{
FILE *fichii;
char w[100][100];

int j=0 ;


fichii=fopen("fichii.txt","r");
while(!feof(fichii))
{ fgets(w[i],100,fichii);
i++;}


fclose(fichii);

for(j=0;j<i;j++)
{
printf("%s",w[j]);
}
printf("\n\n");
}

j'ai un autre tableau qui contient le mot int ( c'est seulement pour tester si le premier mot de la table w est la meme que int
w contient pour chaque ligne
int x=2;
printf("%d",x);


le probleme c'est que lorsque j'ai utiliser la fonction strtok(), j'arrive pas a separer chaque mot pour la comparer avec la liste des mots
alors j'obtient a la fin que int ce n'est pas un mot cle
sachant qu il ya un int parmis la liste des mots.

void lire_mot()
{
FILE *mot;
int k=0 ;
char x[100][100];
int l=0,j;
char s[100][100];
//----

char const*pc=strtok(ligne," ");

while(pc !=NULL)
{
printf("%s",pc);
strcpy(s[l],pc);

l++;
pc=strtok(NULL, " ");
}
printf("\n\n\n");
for(j=0;j<l;j++)
printf("%s",s[j]);

//-----------



mot=fopen("mot.txt","r");
while(!feof(mot))
{ fgets(x[k],100,mot);
k++;}


fclose(mot);
printf("\n\n");
for(j=0;j<l;j++)
{

printf("\t%s",s[j]);
}


for(j=0;j<k;j++)
{

printf("\n%s",x[j]);
}


printf("\n\n");
while(j<k&&strcmp(s[0],x[j])!=0 ){
j++;}

if(j<k){
printf("%s: est un mot clef ",s[0]);}
else{
printf("%s:n'est pas un mot clef ",s[0]);
}

}

Merci beaucoup.

1 réponse

soukainaaaa Messages postés 2 Date d'inscription jeudi 17 décembre 2015 Statut Membre Dernière intervention 17 décembre 2015
17 déc. 2015 à 02:11
s'il vous plais donnez moi une asstuse ou une methode pour resoudre ce probleme et puis terminer mon projet car c'est une partie de l'examen final
merci beaucoup en tout les cas
0
azerty123456
17 déc. 2015 à 03:36
Essaye de mettre des guillemet avec un espace pour séparer plusieurs mot dans ton strtok et bon Shell on galère tous
0