Programme qui lit au clavier un mot et qui affiche sont inverse

saidinfo Messages postés 17 Statut Membre -  
saidinfo Messages postés 17 Statut Membre -
Bonjour, je me viens de résoudre ce programme mais j'ai pas arriver vraiment à la réponse aidez moi plz je suis coincé

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define nbr 36

int main()
{ char ch[nbr+1],v;char* i,j;
    printf("Entrer le texte que vous souhaitais ! \n");
    gets(ch);
    i=ch;
    j=ch[nbr+1];
    for (i=ch;*i;i++,j--)
    {
        v=*j;
        *j=*i;
        *i=v;

    }
    puts(ch);
    return 0;
}


EDIT: Ajout de la coloration syntaxique.

1 réponse

  1. Franck7511 Messages postés 14571 Date d'inscription   Statut Membre Dernière intervention   1 121
     
    Fais attention à gets(), cette fonction n'existe de toute manière plus en C11.

    Au lieu de gets(), utilise plutôt
    char ch [nbr];
    fgets(ch, nbr, stdin);
    


    Pour retourner ta chaîne de caractères :
    char str_reversed [nbr];
    int len = strlen(ch), i;
    for (i = 0; i < len; i++)
    {
        str_reversed[i] = ch[len - 1 - i];
    } 
    str_reversed[len] = '\0';
    


    Enfin, fais attention à l'orthographe.
    "Entrer le texte que vous souhaitais ! \n" ==> "Entrez le texte que vous souhaitez ! \n"
    1
    1. saidinfo Messages postés 17 Statut Membre
       
      oui oui effectivement mrc bcp franck !! :) :)
      alors topic effectues !
      0