[debutant]Operation de chaine encore :s

cs_firemax Messages postés 24 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 19 août 2005 - 4 juin 2005 à 18:16
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 - 6 juin 2005 à 17:04
Bonjour



Certain reconaitrons ce code (surtout [auteurdetail.aspx?ID=19734 vecchio56]) mais voila ca marche toujours pas et je ne comprend pas :'(



Please helllppp



Code :



#include <stdio.h>

#include <stdlib.h>

#include <string.h>

#include <malloc.h>



void count();

void tri();

char txt[1000];

char *tab[100];

int main()

{

printf("\n\nEntrer le texte de votre choix\n\n");

fgets(txt,999,stdin);


printf("\nVous avez rentre : %s\n\n",txt);

count();

tri();



return(0);

}



void count()

{

int taille=strlen(txt);

int caract=strlen(txt);

int nb=0,i=0;



for(i;i<taille;++i)

{


if((txt[i]== ' ') || (txt[i] == '\'') || (txt[i] == ',')){

nb++;

caract--;}

}

nb++; //car pas d'esapace en fin de ligne



printf("Il y a : %d mot",nb);

printf("\nIl y a %d caractere (sans espace)\n\n",caract-1);

}

void tri()

{

char *tab[100];

int i 0,j 0;

char *ptr = txt;

for(; j < strlen(txt); j++)

{

if((*ptr ' ') || (ptr 0))

{

*ptr = 0;

ptr++;

tab[i] = ptr;

i++;

j++;

}

ptr++;

}



}




Firemax

8 réponses

cs_firemax Messages postés 24 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 19 août 2005
5 juin 2005 à 11:56
Personne ?



Please
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
6 juin 2005 à 13:01
fo ke tu sois plus précis sur ce ki fonctionne pas, mais en revanche ton code n'est po bien méchant donc tu devrait t'en sortir...
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
6 juin 2005 à 13:09
La dernière fois tu avais dit que tu avais tout compris. Dis exactement
l'endroit ou tu ne comprends pas, et surtout essaie de te trouver un
bon cours de C
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
6 juin 2005 à 13:40
re pas mieux

youpi :)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_firemax Messages postés 24 Date d'inscription lundi 30 mai 2005 Statut Membre Dernière intervention 19 août 2005
6 juin 2005 à 13:50
En faite je croyais avoir compris



Mais en faite si la tab est un tableau de pointeur qui pointe sur la
position des espace alors quand on affiche tab[0] par exemple on a la
chaine moins le premier mot :s



Donc en faite j'avais finalement pas compris ca comme ca :s



Et en faite j'aimerais afficher mot par mot :s



Par exemple :



Chaine : Je fais un essai

Contenu de tab[0] : fais un essai

Contenu de tab[1] : un essai

Etc ..



Alors que moi je voudrais :

tab[0]:Je

tab[1]:fais

tab[2]:un

tab[3]:essai
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
6 juin 2005 à 13:54
J'ai tu te le dire je ne sais combien de fois: tu remplace les espaces par des 0, comme ca on a des mots séparés

TU REMPLACES LES ESPACES PAR DES ZEROS
0
youpiyoyo Messages postés 539 Date d'inscription vendredi 6 juin 2003 Statut Membre Dernière intervention 14 juillet 2010
6 juin 2005 à 16:13
je vous laisse dans votre discution, mais je suis pas sur ke la solution de ton tab[kelke chose] soit la meilleur, en meme tmp j'ai po suivie lke début de la conversation donc...

youpi :)
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
6 juin 2005 à 17:04
Moi même je me souviens plus trop, je crois que le problème était de
trier les mots d'une phrase. Si tu as une meilleure méthode tu devrais
le dire
0
Rejoignez-nous