Impossible de remplir un tableau de caractere

Bonjour,
jai un problème de remplissage j'arrive pas à remplir un tableau au cours de l’exécution , mon programme s'execute correctement si et seulement
si je lai remplis dans mon code pouvez vous m'aider svp et merci beaucoup
voila mon code
"mon programme sert à calculer la probabilité de tout les caractéres dans ma chaine "

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void tri_iteratif(char *tableau[20], int taille)
{
char *temp;
int i,j;

for (i = 0; i < taille; i++)
for (j = 0; j < taille; j++)
if (strcmp(tableau[i],tableau[j]) < 0)
{
temp = tableau[i];
tableau[i] = tableau[j];
tableau[j] = temp;
}

}

int main()
{
char *ch[]={"a","b","a","b","c"};
float occ=0,n;
int i=0,j;
float prob;

/* printf("donner la chaine SVP :");
gets(ch);
n=strlen(ch);
printf ("%f",n);*/

tri_iteratif(ch,5);
for(i=0;i<5;i++)
printf("%c",ch[i]);
while(i<5){

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

if (ch[i]==ch[j])
{

occ=occ+1;
//printf ("\n%f",occ);
}

}

prob=(occ/5);
printf ("\n%f",prob);
i=i+occ;
occ=0;

}

return 0;
}


2 réponses

  • Votes
  • Date
  • Date décroissante
  1. Salut,

    Si tu ne mets pas d'espaces utilise le scanf(%s) ce sera plus simple
    1. salut,
      j lai mis mais meme prbleme mon fct tri ne marche pas
  2. pour ton pointeur de tableau dans la déclaration de ta fonction il ne faut pas mettre le nombre de cases il me semble et dans l'appel de ta fonction il faut mettre le & pour le pointeur car il travaille avec l'adresse

    --
    1. pouvez_vous les corrigées SVP puisque j'ai pas bien compris votre commentaire et merci
    2. void tri_iteratif(char *tableau, int taille)
      tri_iteratif(&ch,5);
    3. Après je peux me tromper, ça fait un moment que je n'ai plus touché aux pointeurs