Getchar

Getchar
2005-09-29T01:27:15+02:00
2005-09-29T21:46:48+02:00
2022-10-27T06:25:41+02:00
shutdown
Sziasztok!

A billentyűzetről szeretnék beolvasni 3 számot majd ezeket kiiratni.

#include <stdio.h>
main()
{ int a = 0, b = 0, c = 0;
clrscr();
printf("a="); a = getchar();
printf("%d",a);

printf("b="); b = getchar();
printf("%d",b);

printf("c="); c = getchar();
printf("%d",c);

getch();
}
Nos így elég durva dolgokat csinál...a b változót kihagyja a sorból amikor outputról kéne értéket adni neki, meg nem azokat az értékeket adja vissza amit beirtam! Arra gondoltam h vmi ascii kódot ir ilyenkor ki..de nem tudom. Vagy a putchar-t kell használni?
Help me! :)
köszi
sd
Mutasd a teljes hozzászólást!
Bekerest a scanf-fel kene vegezni.
Talan igy:

int a=0;
printf("a=");
//amig jot nem ir be
while(scanf(&a)==0)
{
printf("\na=");//uj prompt
}
Mutasd a teljes hozzászólást!

  • Jó a getchar() is, csak akkor a következő beolvasott karakter ASCII kódját kapod meg.

    A scanf kell neked, szerintem is, bár szinkopa elfelejtette a kódból a formátumsztringet:

    int result = scanf( "%d", &a);

    Itt a %d adja meg, hogy egész számot akarsz beolvasni, a visszatérési érték pedig a sikeresen feltöltött változók száma (mert több változóba is tudsz gy utasítással beolvasni, lásd MSDN).
    Mutasd a teljes hozzászólást!
  • Én is a scanf függvényt tudom ajánlani, tehát a proram valahogy így néz ki:

    #include <stdio.h> /*printf() függvényt tartalmazó deklarációs állomány*/
    #include <conio.h> /*clrscr() függvényt tartalmazó deklarációs állomány*/

    main ()
    {
    int a=0,b=0,c=0;

    clrscr ();
    printf ("a="); /*a= kiírása*/ scanf ("%d", &a); /*'a' bekérése*/
    printf ("b="); /*b= kiírása*/ scanf ("%d", &b); /*'b' bekérése*/
    printf ("c="); /*c= kiírása*/ scanf ("%d", &c); /*'c' bekérése*/
    printf ("\na=%d\nb=%d\nc=%d", a,b,c); /*a='a', b='b', c='c' kiírása*/
    getch ();
    }
    Mutasd a teljes hozzászólást!
  • lol

    egyébként fenemód szükség van ám a clrscr()-re, meg úgy egyáltalán a conio.h-ra...
    Mutasd a teljes hozzászólást!
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd