Új hozzászólás Aktív témák
-
Rickazoid
addikt
Üdv!
A következő kóddal (mintakód, de a problémám ugyanez) lenne a problémám:
int i;
scanf("%d",&i);
printf("%d",i); //nem integer esetén 0
while(i==0)
{
printf("Nem jó. Új szám: ");
scanf("%d",&i);
}
printf("%d",i);
Amíg az i-nek számot adok meg, nincs gond, de amint betűt, a mögötte lévő ciklus végtelen ciklusba kerül. Ezt próbáltam meg kiküszöbölni a példában szereplő while ciklussal ami megnézi, hogy 0-e, mivel nem szám esetében 0 lesz az i értéke, de az is végtelen ciklusba kerül. Hogy tudom elérni, hogy nem szám beírásakor újrakérje a számot végtelen ciklusok helyett?
Az int-et nem módosíthatom karakterre, főleg nem karaktertömbre, az most túl bonyolult lenne a program többi része miatt.
Van valami megoldás erre? Egyáltalán miért nem működik? Ha az i értéke 0 lesz, akkor a while miért hülyül meg, mi a különbség 0 és 0 közt, ha mindkettő integer?
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Elemlámpa, zseblámpa
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Milyen TV-t vegyek?
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Anglia - élmények, tapasztalatok
- GoodSpeed: Te hány éves vagy?
- A fociról könnyedén, egy baráti társaságban
- Revolut
- További aktív témák...
- Azonnali készpénzes félkonfig / félgép felvásárlás személyesen / csomagküldéssel korrekt áron
- Újszerű PlayStation 4 Pro GoldHEN - 20db PS4 játékkal (Cyberpunk, God of War és rengeteg más)
- Bomba ár! Dell Latitude 5480 - i5-7GEN I 8GB I 128SSD I 14" FHD I HDMI I Cam I W11 I Garancia!
- Xiaomi Redmi Note 14 256GB, Kártyafüggetlen, 1 Év Garanciával
- Bomba ár! Lenovo ThinkPad L480 - i5-8G I 16GB I 256SSD I 14" FHD Touch I HDMI I Cam I W11 I Gar
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest

