Chaine de caractére (nombre d'occurence)

lors de la compilation il me demande de donner une chaine et un caractére mais il ne me donne pa le nombre d'occurence aidez moi S.V.P =)
#include<stdio.h>
#include<string.h>
void chaine(char ch[],int taille)
{
printf("donner une chaine");
fgets(ch,taille,stdin);
;}
char carac()
{
char c1;
printf("donner un caractére");
c1=getchar();
return(c1);
}
int nbrocc(char c1,char ch[])
{
int i,nb;
nb=0;
i=0;
while (ch[i]!='/0')
{
if (c1==ch[i])
{

nb++;
}
i++;
}
return(nb);}
void main()
{
int a;
char ch[50];
char c1;
chaine(ch,50);
c1=carac();
a = nbrocc(c1,ch);
printf(" le nombre d'occurence = %d",a);
}

1 réponse

  1. Contributeur
    Dans void chaine()
    ;}
    Pas besoin de smiley ^^. Pas besoin de ; sur une ligne seule.

    Dans main()
    void main() n'existe pas. C'est int main (void).
    Et à la fin, on met : return 0;

    chaine(ch,50);. C'est bon. Mais autant mettre : chaine(ch, sizeof ch); Ca sera plus simple à maintenir.

    Dans nbrOcc() :
    while (ch[i]!='/0') : ce n'est pas '/0', mais '\0';

    Cdlt,
    0