Bonjour

Je me posais une question , j'aimerais diviser une chaine en sous chaine pour pouvoir ensuite les trier par longueur de chaine de caractere

Je m'explique : si je rentre "ceci est un essai" j'aimerais arriver a classer les mot par longueur mais je ne vois pas de solution a pars en separant la chaine en plusieurs chaine :s

Voila ce que j'ai deja fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
 
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <malloc.h>
 
void count();
char txt[1000];
 
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();
 
 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)",caract-1);
}
Pleassee help


PS:J'ai deja demander de l'aide sur un forum mais j'arrive toujours pas a comprendre