Hirdetés

Új hozzászólás Aktív témák

  • Gergello
    addikt

    Hali!

    Nincs baj azzal amit írsz, csak ugye le kellene ellenőrizni, hogy van-e helyes adat a STR-be.
    Ezt megteheted a strlen() függvénnyel, vagy ahogy a példa mutatja, magával a scanf()-el is.
    A scanf() egy egésszel tér vissza, mely jelzi, hogy hány értéket tudott feldolgozni.
    (ha egyszerre pl 5 adatot kérsz be scanf()-el, akkor 5-tel tér vissza, ha minden oké volt)
    Jelen esetben 1-gyel fog visszatérni, ha a bevitt szöveg megfelel a scanf()-ben megadott szűrésnek.

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

    int main()
    {
    char str[256];

    printf("Kérem a szöveget: ");
    if (scanf("%20[a-z]",str)!=1) {
    printf("Hibás adatbevitel");
    return -1;
    }
    printf(str);
    return 0;
    }

    Fire.

    Szia! Félreértetted, ezt az ellenőrzést én is tudom.
    A kérdés az lenne, hogy úgy kell működnie mint ahogy írtam?
    Tehát pl, ha ezt vinném be: Aasdjfnognodgn akkor nem kellene az A mögötti karaktereke beolvasnia? vagy egy másik példa sdasadadsBdsadasd és itt is csak a B-ig olvas. Én arra számítottam, hogy ez így kihagyja a nem kívánt karaktereket, nem arra hogy csak addig olvas.

    a megoldásba amúgy is csak printf, scanf-et kell majd írni.

Új hozzászólás Aktív témák