Portál AbcLinuxu, 14. července 2025 21:11


Dotaz: Jednoducha aplikace na scitani v C, ale nefunguje :( help

Bundas avatar 1.1.2014 15:12 Bundas | skóre: 14 | Pardubice
Jednoducha aplikace na scitani v C, ale nefunguje :( help
Přečteno: 396×
Odpovědět | Admin

int main(void)
{
    int z1,z2,z3;
    printf("Zadejte prvni cislo: ");
    //vstup do z1
    z1 = getchar();

    printf("Zadejte druhe cislo: ");
    //vstup do z2
    z2 = getchar();
    z3 = z1 + z2;
    printf("%d\n", z3);
    return 0;
}
nevite, proc to (ne)funguje? nejde mi zadat cislo do z2

jestli mi nerozumite, tak to zkuste zkompilovat

btw. je mi 14 a do ted sem se ucil C++, tak prosim omluvte moji neznalost, ale v C++ je to mnohem jednodussi napsat
Abe the Messiah has come.

Řešení dotazu:


Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Jendа avatar 1.1.2014 15:39 Jendа | skóre: 78 | blog: Jenda | JO70FB
Rozbalit Rozbalit vše Re: Jednoducha aplikace na scitani v C, ale nefunguje :( help
Odpovědět | | Sbalit | Link | Blokovat | Admin
Použil bych scanf().
int main(void)
{
    int z1,z2,z3;
    printf("Zadejte prvni cislo: ");
    //vstup do z1
    scanf("%i",&z1);

    printf("Zadejte druhe cislo: ");
    //vstup do z2
    scanf("%i",&z2);
    z3 = z1 + z2;
    printf("%d\n", z3);
    return 0;
}
1.1.2014 15:47 MadCatX
Rozbalit Rozbalit vše Re: Jednoducha aplikace na scitani v C, ale nefunguje :( help
Odpovědět | | Sbalit | Link | Blokovat | Admin
getchar() přečte byte z stdin a vrátí jeho hodnotu. Tato hodnota bude záviset na použitém kódování vstupu a rozhodně neplatí, že znak '1' má hodnodu 1 (v ISO 8895-1 a UTF-8 je to 49). Proto se na takto jednoduché parsování vstupu používá scanf(). scanf() je vůbec dost užitečná funkce a dají se s ní provádět i pokročilejší triky než převod znaku na integer.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.