Aktív témák
-
Jester01
veterán
Ha már ellenőrzés van benne, akkor beker == 0 helyett <= kellene. Másrészt ha a be.txt-ben nem szám van, akkor a beker változó értéke inicializálatlan lesz és így valami véletlenszerű számot fog kiadni. Szóval még a fscanf visszatérési értékét is ellenőrizni kellene. És akkor még nem is beszéltünk az olyan bemenetről, ami ugyan számmal kezdődik, de az egész nem értelmezhető számként (pl. ''1alma'').
Mondjuk a feladatkiírás szerint ezek az ellenőrzések nem szükségesek. -
Jester01
veterán
Ahogy Brain mondta, azzal az fprintf sorral van a baj. A \n egyszerűen nem kell bele, így egy sorba írja majd a jeleket. Ellenben a ciklus után, de a fájl lezárása előtt, írj ki egy csupasz soremelést ha ez a feladatkiírás szerint szükséges (nem tudom, nem néztem meg)
A bufferes dolog még mindig nem jó, miért nem írod át?
A visszatérési értékről röviden: a main függvénynek a prototípusa int main(int argc, char* argv[]). Minden más csak véletlenül, kompatibilitás és a C calling convention (hogy is van ez magyarul?) jellegzetessége miatt működik. Tessék ezt a formát használni és ennek megfelelően visszatérési értéket is megadni. (Persze a pointer-tömb ekvivalencia miatt az argv lehet char** is) -
Forest_roby
őstag
Jahhh, ph motor.... :|
#include <stdio.h>
#include <stdlib.h>
void main(){
printf(''Írj be egy max. négyjegyű számot!\n\n'');
int be;
char c[4] = { 0 };
scanf(''%[0123456789]'', c);
be=atoi(c);
int i;
int szamok[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};
char* jelek[]={''M'',''CM'',''D'',''CD'',''C'',''XC'',''L'',''XL'',''X'',''IX'',''V'',''IV'',''I''};
for (i=0;i<(sizeof(szamok)/sizeof(int));i++){
while (be>=szamok[i]){
printf(''%s'',jelek[i]);
be=be-szamok[i];
}
}
}
kijejlol, ctrl + c, ctrl + v, idézo jelek javítása, aztán fordítás.
Nekem műxik.....
[Szerkesztve] -
Forest_roby
őstag
kb:
#include <stdio.h>
#include <stdlib.h>
void main(){
printf(''irj be egy max. negyjegyu számot!\n\n'');
int be;
char c[4] = { 0 };
scanf(''%[0123456789]'', c);
be=atoi(c);
int i;
int szamok[]={1000,900,500,400,100,90,50,40,10,9,5,4,1};
char* jelek[]={''M'',''CM'',''D'',''CD'',''C'',''XC'',''L'',''XL'',''X'',''IX'',''V'',''IV'',''I''};
for (i=0;i<(sizeof(szamok)/sizeof(int));i++){
while (be>=szamok){
printf(''%s'',jelek);
be=be-szamok;
}
}
}
//nem is tudtam, hogy van ilyen topic : )
[Szerkesztve]
Aktív témák
- Elektromos autók - motorok
- Anglia - élmények, tapasztalatok
- Starlink
- Sweet.tv - internetes TV
- Vezetékes FEJhallgatók
- Formula-1
- Milyen HASZNÁLT notebookot vegyek?
- Akciófigyelő: Ajándékokkal érkeztek meg az új Dreame porszívók
- Vivo X300 Pro – messzebbre lát, mint ameddig bírja
- Samsung Galaxy Watch7 - kötelező kör
- További aktív témák...
- Apple iPhone 14 Pro / 128GB / Kártyafüggetlen / 12Hó Garancia / Akku: 86%
- BESZÁMÍTÁS! Intel Core i7 6700 4 mag 8 szál processzor garanciával hibátlan működéssel
- MSI Prestige A16 AI+ Ryzen AI 9, 32GB DDR5 7500, QHD+ 165Hz csúcskategóriás ultralaptop!
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 32/64GB RAM RTX 5070 12GB GAMER PC termékbeszámítással
- DAHUA 16GB DDR4 3200 MHz laptop RAM
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
, void -nál nincs visszatérési érték.

