Chaîne de caractère

Ahmedou10 Messages postés 3 Statut Membre -  
Dalfab Messages postés 638 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
Quelqu'un peut m'aider sur l'exercice suivante, ça me fatigue vraiment, voilà l'exo :
Écrire une fonction rechercheRemplacerCar qui prend en argument une chaîne de caractère qu'on peut nommer txt et deux caractères car1 et car2 et qui à chaque fois que le caractère car1 apparait dans le txt le remplace par car2.
Merci de m'aider svp

4 réponses

  1. Ahmedou10 Messages postés 3 Statut Membre
     
    Ok merci, je suis nouveau je connaissais pas les règles
    0
  2. Ahmedou10 Messages postés 3 Statut Membre
     
    Voilà le code que j'ai fait sur la fonction
    int rechercheChaine (char *chaine1[300], char *chaine2[300])
    {
    int i;
    for(i = 0;chaine1[i] !='\0';i++)
    {

    if(chaine1[i] == chaine2[i])
    {
    return i;

    }

    }

    }
    0
    1. [Dal] Messages postés 6122 Date d'inscription   Statut Contributeur Dernière intervention   1 108
       
      Ce que l'on peut déjà dire, au vu du sujet :

      fonction rechercheRemplacerCar qui prend en argument une chaîne de caractère qu'on peut nommer txt et deux caractères car1 et car2

      est que la fonction proposée :
      • ne porte pas le bon nom
      • ne comporte pas le bon prototype puisque les paramètres doivent être "une chaîne de caractère qu'on peut nommer txt et deux caractères car1 et car2"
      • ne fournit aucun traitement en rapport avec la demande qui consiste à ce que "à chaque fois que le caractère car1 apparait dans le txt le remplace par car2"


      La fonction postée parait vouloir faire autre chose.

      Elle pourrait, par exemple, être une fonction qui retournerait l'indice du premier char commun à deux chaînes de caractères C, la première devant avoir une taille au plus de 299 char et la deuxième devant avoir une taille supérieure ou égale à la première et dans la limite de 299 char, à condition de commencer par corriger son prototype de
      int rechercheChaine (char *chaine1[300], char *chaine2[300])
      en
      int rechercheChaine (char chaine1[300], char chaine2[300]) 
      ...
      0
  3. Dalfab Messages postés 638 Date d'inscription   Statut Membre Dernière intervention   102
     
    Bonjour,

    En effet ta fonction ne reçoit pas les paramètres indiqués par l'énoncé, en plus ça n'est pas du tout le format pour transmettre une chaîne de caractères.

    Ça devrait ressembler à :
    void rechercheRemplacerCar(char* chaine_a_modifier, char car_a_remplacer, char car_de_remplacement)

    La fonction doit alors regarder tous les caractères de
    chaine_a_modifier
    et pour ceux qui valent
    car_a_remplacer
    on met à la place
    car_de_remplacement
    .
    0