- Xiaomi 15 - kicsi telefon nagy energiával
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Samsung Galaxy A34 - plus size modell
- Samsung Galaxy S23 Ultra - non plus ultra
- Apple Watch Sport - ez is csak egy okosóra
- Samsung Galaxy S25 - végre van kicsi!
- Ezek az új Google Pixel cuccok hivatalos magyar árai
- Google Pixel topik
- Honor Magic5 Pro - kamerák bűvöletében
- Samsung Galaxy Z Fold5 - toldozás-foldozás
Ú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!
- Realme GT2(használt, független, 128 GB, 8 GB RAM, szürke)
- GAMER PC! i7 12700 / RTX 3080 Ti / 32GB 4133MHz / B760M / 1TB NVMe / 700w! BeszámítOK
- KERESEM! LG UltraGear 45GS95QE - OLED 240HZ
- Belépő GAMER PC! i5-12400F / RX 6600 XT / 16GB 3200MHz / 512GB NVMe / 600w! BeszámítOK
- GAMER PC! i7-12700K / RTX 4070 Super / 32GB 6000MHz / 1TB Gen4 / 750w Gold! BeszámítOK
- Új és újszerű 13"-14" Gamer, ultrabook, üzleti készülékek nagyon kedvező alkalmi áron Garanciával!
- BESZÁMÍTÁS! Sapphire Nitro+ RX 7900XTX 24GB videokártya garanciával hibátlan működéssel
- Bowers/Wilkins Px7 S2 fejhallgatók
- Bomba ár! HP Pavilion 15 - i5-8265U I 8GB I 256SSD + 1TB I Nvidia I 15,6" FHD I Cam I W11 I Gari!
- Apple iPhone 7 128GB Yettel Függő 1Év Garanciával
Állásajánlatok
Cég: FOTC
Város: Budapest