Hirdetés
- Amazfit Bip 6 - jót olcsón
- Bemutatkozott a Poco X7 és X7 Pro
- Honor Magic6 Pro - kör közepén számok
- EarFun Air Pro 4+ – érdemi plusz
- Yettel topik
- Poco F8 Pro – titkos favorit lehet belőle
- Okosóra és okoskiegészítő topik
- Telekom mobilszolgáltatások
- Így nézhet ki a Huawei Pura 90
- Samsung Galaxy Watch8 és Watch8 Classic – lelkes hiperaktivitá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!
- Robotporszívók
- BestBuy topik
- Amazfit Bip 6 - jót olcsón
- EAFC 26
- A legrosszabb CPU-k – az ExtremeTech szerint
- Linux haladóknak
- Feketelista, avagy a rossz boltok topicja
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Milyen billentyűzetet vegyek?
- Kínai és egyéb olcsó órák topikja
- További aktív témák...
- 8 ÉV GARANCIA! Seasonic Vertex PX 1200W 80 PLUS Platinum Full moduláris tápegység.
- GIGABYTE GeForce RTX 5080 AORUS MASTER 16GB GDDR7 256bit 3+1 év Alza garancia
- NZXT Kraken 360 (RL-KN360-B1) GARANCIA MÉG 50 HÓNAP!
- Samsung Galaxy tab A8 SM-X200 10,5 " tablet
- 480-512GB bontatlan M.2 NVMe SSD-k eladók GARANCIÁVAL/SZÁMLÁVAL (a Te nevedre kiállítva)!
- 184 - Lenovo Legion Pro 7 (16IAX10H) - Intel Core U9 275HX, RTX 5090 (ELKELT)
- GYÖNYÖRŰ iPhone 11 64GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS3121
- Workstation bazár - Lenovo, HP, Dell - számla, 6 hó garancia
- Tablet felvásárlás! Samsung Galaxy Tab S10+, Samsung Galaxy Tab S10 Ultra, Samsung Galaxy Tab S10 FE
- AZONNAL KÉSZLETRŐL! AMD Ryzen 7 9800X3D 64GB 6000MHz RAM 2TB Gen4 SSD RTX 5090 32GB GDDR7 1200W
Állásajánlatok
Cég: Central PC számítógép és laptop szerviz - Pécs
Város: Pécs
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



