C-ohjelmointi syksy 2007


Harjoitus 5

Tehtävät käsitellään harjoitustilaisuuksissa 4-5.10

  1. Kirjoita funktio, joka etsii merkkijonosta tiettyä merkkiä. Funktiolle annetaan parametreina merkkijono ja merkki. Funktio palauttaa arvonaan osoittimen merkkijonon ensimmäiseen sellaiseen merkkiin, jota etsitään. Ellei etsittävää merkkiä löydy, funktio palauttaa arvon NULL. Kirjoita funktiolle myös käyttöympäristö eli pääohjelma, josta kutsut sitä.

  2. Kirjoita funktio void fill (char *p, int n, char pat),  joka alustaa muistia seuraavasti:  se  täyttää osoitteesta p alkaen  n muistitavua  merkin pat arvolla.

  1. Laadi ohjelma, joka saa  komentoriviparametrina roomalaisen numeron (esim. MXLIV) ja tulostaa tämän numeron arabialaisina numeroina. Käsittele vain 1000 pienempiä arvoja.

  2. Tee ohjelma etsi, joka saa  komentoriviparametrina tiedoston nimen ja merkkijonon (etsi tied1 C-kieli). Ohjelma tulostaa kaikki ne tiedoston rivit, joilla annettu merkkijono esiintyy.

  3. Tee jonon toteutus. Voit olettaa, että jonoon talletetaan esim. double tyyppisiä alkioita. Lisää koodiin assert:in avulla ehtoja, joilla varmistut ohjelman oikeasta loogisesta toiminnasta. Kokeile myös virheenjäljitystä ehdollisen kääntämisen avulla.

.