Új hozzászólás Aktív témák
-
dudika10
veterán
válasz
Geresics
#3889
üzenetére
#include <stdio.h>
#include <string.h>
void beolvas(char * szoveg)
{
printf("Adjon meg egy max. 70 karakter hosszu szoveget, majd usson ENTER-t!\n");
gets(szoveg);
return;
}
int szamlalas(char *szoveg)
{
int db=0;
int i=0;
while (szoveg[i]!='\0' && szoveg[i]!='.')
{
if (szoveg[i]==' ')
db++;
i++;
}
return db;
}
int main()
{
char szoveg[71];
int db;
beolvas(szoveg);
db=szamlalas(szoveg);
printf("A szoveg: %s, szavak szama: %d\n", szoveg, db);
return 0;
}Így jó.
A while ciklusod végtelenciklusba kerülne, nem logikai vagy, hanem és kapcsolat kell. Ha bármelyik megtörténik egyből ki kell lépni.
Láthatod azt is, hogy sztringet hogy kell átadni a függvénynek, és azt is, hogy a vissszatérési értéket hogyan kell használni.
Felhívnám a figyelmed az int db=0; és int i=0; sorokra. A deklarált változók memóriaszemetet tartalmaznak mindaddig, amíg értéket nem adsz nekik. Lehet, hogy az i-ben például a 2341 volt tárolva pont, és akkor úgy kezded, hogy a 71 lefoglalt bájtodból a 2341-ediket akarod olvasni, ahol lehet, hogy éppen az operációsrendszer dolgozik. Ezt nem szabad, ezért a fordító figyelmeztet, hogy adj értéket használat előtt.Remélem senki nem fogja leharapni ezért a fejem, de a BME VIK villamosmérnök hallgatók első féléves tárgya a C, és ebben a félévben nagyszerű diasort állítottak össze az oktatók.
[link]
Van gyakorlati anyag, elméleti anyag, rengeteg példa.
Ú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!
- Formula-1
- BMW topik
- Rettegés és új ellenfelek: bemutatkozott a Lords of the Fallen II Umbralja
- Netfone
- Nyáron jön a S.T.A.L.K.E.R. 2 első nagy sztori DLC-je, a Cost of Hope
- FOTÓS beárazás
- Audi, Cupra, Seat, Skoda, Volkswagen topik
- Milyen program, ami...?
- Samsung Galaxy S26 Ultra - fontossági sorrend
- Házimozi belépő szinten
- További aktív témák...
- 3TB Seagate Barracuda 3,5-es HDD-k
- Ryzen 7 5800X / AIO / NITRO+ RX 9060 XT 16GB / B550M WIFI / 32GB RAM / 1TB NVMe SSD / 650W GOLD
- Lenovo Thinkpad L13 G4 i5-1335u 16 GB 256 GB NVMe 13.3" érintős laptop
- iPhone 17 Air 256 GB Space Black - 100% akku, kártyafüggetlen, több mint 2,5 év gari!
- 4TB Seagate Exos 7E8 Enterprise 3,5 HDD (2 nap futás, 15TB írt adat)
- Apple iPhone 17 Pro Max 256GB Deep Blue Karcmentes állapot 100% akku (93 ciklus)
- ÁRGARANCIA!Épített KomPhone i5 10400F 16/32/64GB RAM RX 7600 8GB GAMER PC termékbeszámítással
- Apple Watch Series 10 46mm GPS+Cellular Titanium, Újszerű, 1 Év Garanciával
- NEO-t vennél? NE TEDD!!! KÉSZLETKISÖPRÉSI UltraAkcióóó! Air M4 16GB 256GB Garancia - több színben!
- ASUS TUF A14 Gaming Notebook! Ryzen AI HX 370 / RTX 4050 / 16GB DDR5 / 1TB NVMe! BeszámítOK!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

