Kezdőoldal » Számítástechnika » Programozás » Hogy kell ezt a programot...

Sylar007 kérdése:

Hogy kell ezt a programot megírni C-ben?

Figyelt kérdés

Elkezdtem a C programozási nyelvet tanulni B. W. Kernighan és D. M. Ritchie könyve alapján. A könyvben vannak gyakorlatok is, és az egyik ilyen gyakorlathoz szeretnék segítséget kérni!


A feladat pontos szövege:

"Írjunk olyan programot, amely a bemenetet átmásolja a kimenetre, miközben az egy vagy több szóközből álló karakterláncokat egyetlen szóközzel helyettesíti!"


Próbálkoztam vele, de csak nem sikerül sehogy sem. Több kódot is írtam már, de nem akar sikerülni.


A legutóbbi kód amit írtam rá így néz ki:


#include <stdio.h>


int main()

{

int c;

while((c=getchar())!=EOF)

{

if (c==' ')

c=' ';

putchar(c);

}

}


Ahogy gondolkodtam rajta, az lehet a baj, a karakterenként vizsgálja meg a program a bemenetet, és ezért kapom vissza ugyanazt, mint amit beírtam. De akárhogy töröm a fejem, nem tudom, hogy hogyan is tudnám azt elérni, hogy a sok szóközből egyet csináljon a program. Ha valaki tudna segíteni, hogy most merre induljak el, azt nagyon megköszönném!


2013. szept. 26. 11:26
1 2
 11/12 anonim ***** válasza:

Én is írhattam volna ezt

!(c==' ' && cprev==' ')

így

(c!=' ' || cprev!=' ')

de akkor még nehezebben lett volna érthető. Ehhez kell némi elméleti alap, de az is igaz, hogy ezt a kódolással és feladatokkal párhuzamosan érdemes tanulni.

Respect. :)

2013. szept. 26. 14:18
Hasznos számodra ez a válasz?
 12/12 A kérdező kommentje:
Köszönöm szépen a válaszokat. Adszerk ismeretem már van... Csak időközben megfeledkeztem róla.
2013. szept. 26. 15:00
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!