Aide en C pour scanf??

Résolu
Bonjour,
Je fais un petit programme en C et jai besoin d'aide
Mon problème va sans doute vous paraitre facile mais je ne sais pas comment faire , jai cherché un peu et je trouve pas .
Voilà quand j'entre des chiffres dans un scanf , je voudrais faire en sorte que ce soit seulement des 1 et des 0 comment faire pour que le scanf sache qu'il y a dautre chiffre ou des lettre dans ce qui est tapé??

4 réponses

  1. Tu mets résolu alors que tu n'as pas de réponse!

    pour faire ce que tu souhaite tu dois utiliser scanf de la façon suivante

    int nb;
    scanf(" %1[0-1]",&nb);
    tu peux mettre cela dans une boucle et recopier tes un et zero dans un tableau.
    voila
    2
    1. Modérateur
      Salut,
      essai comme ça
      #include <stdio.h>
      int main()
      {
              int nb;
      
              do {
                      printf("Entrez 0 ou 1 : ");
                      if(scanf("%d",&nb) != 1){
                              printf("Vous devez taper 0 ou 1. Au revoir!\n");
                              return -1;
                      }
              }while(nb != 0 && nb != 1);
              printf("nb = %d\n",nb);
              return 0;
      }
      
      0
      1. Bonjour,
        Non ben ca fera pas parce que jveux entrer plusieurs chiffre supposons 11101110101 = correct, et que ca passe mais si il y a un 3 mettons que ca passe pas 110113101 = erreur
        0
        1. j'aurais jamais pensé à utiliser des expressions régulières
          bravo k
          0