Partage
  • Partager sur Facebook
  • Partager sur Twitter

Afficher une lettre

    9 octobre 2006 à 1:15:59

    Salut tout le monde!

    J'ai commencé le jeu du pendu en C, et je suis rendue à demander une lettre au joueur ... Seulement voila, j'essaie d'afficher la lettre pour voir si ça fonctionne, et ça n'affiche absolument rien! J'ai essayé de changer plusieurs bouts de codes, et rien n'y fait!

    Voici le code de mon main.c:


    #include <stdio.h>
    #include <stdlib.h>
    #include <ctype.h>
    #include "main.h"

    int main(int argc, char* argv[])
    {
        long mode = 0, jouer = 1, nb_coups = 10;
        char lettre = 0, mot_secret[100];


            while(mode != 1 && mode != 2)
            {
                printf("Tappez...\n\n");
                printf("1. Pour jouer seul\n");
                printf("2. Pour jouer a deux\n\n");
                scanf("%ld", &mode);
            }

            if(mode == 2)
            {
                printf("Le premier joueur doit entrer un mot");
                scanf("%s", mot_secret);
                printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
            }
            else
            {
                mot_hasard(mot_secret);
            }

            printf("\n\n\n\n\n");
            printf("Il vous reste %ld coups", nb_coups);
            printf("\nTappez une lettre: ");
            lettre = lire();
            printf("%c", lettre);


    return 0;
    }

    char lire()
    {
        char caractere = 0;

        caractere = getchar();
        caractere = toupper(caractere);


        while (getchar() != '\n') ;

        return caractere;
    }
    • Partager sur Facebook
    • Partager sur Twitter
      9 octobre 2006 à 17:22:24

      Il te faut vider le buffer avant d'appeler getchar()...
      • Partager sur Facebook
      • Partager sur Twitter
        9 octobre 2006 à 21:26:48

        Et je fais ça comment??? La fonction lire() je l'ai copié sur le site du Zéro :S
        • Partager sur Facebook
        • Partager sur Twitter
          10 octobre 2006 à 18:54:04

          int c;
          while ((c = getchar()) != '\n' && c != EOF)
              ;


          C'est écrit dans le cours...
          • Partager sur Facebook
          • Partager sur Twitter

          Afficher une lettre

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown