Problem en c

Résolu/Fermé
this is me - 23 déc. 2009 à 22:20
 this is me - 23 déc. 2009 à 23:27
Bonjour,
je veu ecrire un progrmme en language c qui permet de compter le nombre de caractere saisie dans une chaine de caractere
merci de votre aide.

6 réponses

Utilisateur anonyme
23 déc. 2009 à 22:36
Bonjour,

pour cela, tu dois faire une boucle for() qui regarde a chaque fois si le caractere a l'adresse i de ton tableau de char est égal à \0.

Va voir ici
0
merci pour votre reponse pouvez vous me donnez le code.?
0
Utilisateur anonyme
23 déc. 2009 à 22:51
int i = 0;
int lg = 0;
char buf[100] = "coucou";
char c = 'a';

while(c != '\0') {

c = buf[i];
lg++;
i++;

}

printf("Longueur de la chaine \"%s\" : %ld.", buf, lg);



voila, je n'ai pas testé ce code, mais je crois qu'il marche, et finalement j'ai préféré une boucle while.
0
loupius Messages postés 697 Date d'inscription dimanche 1 novembre 2009 Statut Membre Dernière intervention 31 décembre 2017 148
23 déc. 2009 à 22:56
Rien de plus classique:
Soit une chaîne de caractère nommée 'chaine':
char* p = chaine;
while(*p)
  p++;
return (p-chaine);
Bonne continuation
0
Utilisateur anonyme
23 déc. 2009 à 22:59
il y a ça aussi, c'est vrai que c'est plus direct comme méthode... =)
0

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

Posez votre question
je vous propose ce code mais j ai de souci
#include<stdio.h>
#include<conio.h>
main ()
{
     char t[50];
     int n,i,comp=0;
     char x;
     
      printf("donner une valeur X:");
     scanf("%s",&x);
     printf("saisir les elements du tableau : \n");
     for (i=0;i<n;i++)
     scanf("%s",&t[i]);
    
     
     for(i=0;i<n;i++)
     {
     if(t[i]==x)
     comp+=1; 
     }
     printf("le nombre de repetition de x est : %d",comp); 
     getch();
     return 0;
}
0
merci ozox ton code ca marche avec des petite modification;
#include<stdio.h>
#include<conio.h>
main ()
{
    int i = 0; 
int lg = 0; 
char buf[100]; 
char c = 'a'; 
printf("entrer la phrase : ");
gets(buf);

while(c != '\0') { 

c = buf[i]; 
lg++; 
i++; 

} 

printf("Longueur de la chaine et \"%s\" : %ld.", buf, lg-1); 

 
     getch();
     return 0;
}
0