Wczytywanie 5 liczb do tablicy - jak?

0

Chcę wczytać 6 cyfr w C, nie litery, tylko cyfry z przedziału [2,7], tak, aby moje wczytane 6 liczb to były TYLKO cyfry z tego przedziału. Coś mi to nie działa, bo jak podam np. 908888 oraz następnym razem 223498 to program działa, a powinien ponownie, po tym drugim razie poprosić o cyfry, bo w 2-gim podejściu jest przecież 9 i 8 z poza przedziału
..

while(!przerwijPetle)
        {
            printf("\nPodaj 6 cyfr ([2,7])\n\n");
            while( ( c = getchar()) != EOF  &&  c != '\n' &&  i < 6 )
            {
                int liczba = c - '0';
                if(liczba >= 2 && liczba <= 7)
                {
                    odgadniete[i++] = liczba;
                    if(i == 6)
                    {
                        przerwijPetle = true;
                        break;
                    }
                }
                else
                {
                    i = 0;
                }
            }
        }
1
 
#include <stdio.h>

int main() {
    
    char tab[16];
    int i;
    int good = 1;
    do{
        scanf("%7s",tab);
        for(i = 0; i < 6; i++) {
            if((tab[i] >= '2' && tab[i] <= '7') == 0) {
                good = 0;
		break;
            }
	    good= 1;
        }
        
    }while(good == 0);
    
    printf("%6s", tab);
    return 0;
}
1
#include <stdio.h>
 
int main()
  {
   char tab[7];
   int i;
   int bad=1;
   while(bad)
     {
      scanf("%7s",tab);
      for(bad=i=0;(!bad)&&(i<6);++i) bad=!(('2'<=tab[i])&&(tab[i]<='7'));
     }
   printf("%6s",tab);
   return 0;
  }

1 użytkowników online, w tym zalogowanych: 0, gości: 1