IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

Fonction qui compte le nombre d'éléments.


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2009
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2009
    Messages : 2
    Par défaut Fonction qui compte le nombre d'éléments.
    Salut à tous je voudrais faire une fonction qui me premet de compter le nombre d'élèment dans un tableau de chaine de carctère à partir du debut du tableau j'ausqu'a un élèment donné du tableau.

    le code est en pièce jointe. Mais il ne foonctionne pas ,il me renvoie un à chaque fois.Merci d'avance pour votre aide.

    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
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
     
    char *chaine[]={"enfants","champs","whisky","orange",NULL};
     
    int compt(char *string)
    {
    	int i,cpt;
    	i=cpt=0;
    	while(chaine[i]!=NULL)
    	{
    		if(!strcmp(chaine[i],string))
    			cpt++;
    		i++;
    	}
    	return cpt;
    }

  2. #2
    Invité(e)
    Invité(e)
    Par défaut
    Bonjour,

    On peut écrire l'algorithme de ta boucle :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    POUR chaque mot DANS chaine
       SI mot egal string
          ALORS
          cpt = cpt + 1
       FIN SI 
       i = i + 1
    FIN POUR
    SI tu veux retourner la position de string dans chaine, il faut faire autrement :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    POUR chaque mot DANS chaine
       SI mot egal string
          ALORS
          SORTIR de POUR
       FIN SI 
       cpt = cpt + 1
    FIN POUR
    soit en C
    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
    37
    #include <stdlib.h>
    #include <stdio.h>
    #include <string.h>
     
    const char *chaine[]={"enfants","champs","whisky","orange",NULL};
     
    int compt(char *string)
    {
     
    	int cpt = 0, found = 0;
    	while(chaine[cpt]!=NULL)
    	{
    		if(!strcmp(chaine[cpt],string)) {
                found = 1;
                break;
            }
    		cpt++;
    	}
        if(0 == found) {
            cpt = -1;
        }
    	return cpt;
    }
     
     
     
    int main(void) {
        char test_1[] = "whisky";
        char test_2[] = "champs";
        char test_3[] = "burp";
     
        printf("compt(%s) = %d\n", test_1, compt(test_1));
        printf("compt(%s) = %d\n", test_2, compt(test_2));
        printf("compt(%s) = %d\n", test_3, compt(test_3));
     
        return 0;
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    compt(whisky) = 2
    compt(champs) = 1
    compt(burp) = -1

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VBS] Fonction qui compte le nombre de lignes dans un fichier texte
    Par ProgElecT dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 03/05/2012, 13h48
  2. Réponses: 3
    Dernier message: 19/08/2010, 18h21
  3. Réponses: 2
    Dernier message: 03/05/2010, 16h11
  4. Réponses: 6
    Dernier message: 21/01/2010, 15h37
  5. Fonction qui compte le nombre de jours ouvrés par mois
    Par griese dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 27/07/2006, 15h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo