Une erreur, oui mais quoi !

Salut à tous !

Je ne sais pas pourquoi mon code ne fonctionne pas (le Terminal ne m'affiche pas ce que je veux), quelqu'un peut m'aider? Merci. :o))

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

int main(int argc, char *argv[])
{
    char prenom;
    int reponse;
        printf("XXX? : ");
        scanf("%s", &prenom);

        printf("%s, XXX? : ", &prenom);
        scanf("%d", &reponse); // je suppose que le problème vient d'ici ou de la condition d'après. (le else if?)

        if(reponse==1)
        {
            printf("XXX !");
        }

        else
        {
            printf("YYY");
        }


return 0;
}

2 réponses

  1. Bonjour
    Terminal ne m'affiche pas ce que je veux), quelqu'un peut m'aider?
    comme ça non, tu ne dis pas ce que tu voudrais voir affiché....
    0
    1. Contributeur
      Bonjour,

      char prenom;
      scanf("%s", &prenom);
      Ce n'est pas cohérent. prenom est un char pas une chaîne de caractères.
      Mets plutôt :
      char prenom[25];
      et
      scanf("%s", prenom);
      (sans &).

      Note : n'oublie pas de mettre :
      putchar('\n');
      avant le return 0; pour rajouter un retour à la ligne avant de quitter le programme.

      Cdlt,

      Google is your friend
      0