58127 C-ohjelmointi (4 op /2 ov) Syksy 2008
Syksyn 2008 C-kurssi käsittää luennot, harjoitukset, harjoitustyön ja kurssikokeen. Luennot on ensimmäisellä periodilla ja toisen periodin alussa on viimeistään palautettava harjoitustyö.Kurssin oppimistavoitteet
Ajankohtaista
- [12.1.2009] Vanhoja kokeita
- [11.12.2008] Uusintakokeen/Erilliskokeen tulokset.
- [11.12.2008] Korjauksia kurssikokeen tuloksiin
- [5.12.2008] Uusintakokeen/Erilliskokeen pisteet.
- [2.12.2008]Huomatkaa, että Weboodissa näkyvä hylätty merkintä kurssista ei välttämättä merkitse lopullista hylkäämistä, jos teillä on vielä harjoitustyö korjattavana tai uudelleen tarkastettavana. Tiedot noista arvosanoista menee eteenpäin myöhemmin korjauksina.
- [1.12.2008]
Kurssikokeen tulokset
HUOM! Tulokset niiltä osin kuin harjoitustyöt on hyväksytty. Osa
harjoitustöistä on vielä korjattavana tai palautettua korjattua
työtä ei vielä ole välttämättä tarkistettu. Erilliskoetta/Uusintakoetta ei
ole vielä korjattu.
- [4.11.2008] Kokeen arvosteluun voi tutustua ma 10.11 klo 11 - 12 huoneessa D228.
- [3.11.2008]Tiedot tehdyistä harjoitustehtävistä ja koepisteistä on saatavilla intranetistä.
- [10.10.2008]Harjoitustyön ohjauksen ajat ovat harjoitustyökohdassa. Ohjauksessa ei ole pakko käydä.
- [7.10.2008]Tarkista, että harjoitustyön aiheesi on kirjattu oikein. Harjoitustyökohdasta on linkki intranetissä olevaan tiedostoon.
- [8.9.2008]Sovimme luennolla, että arvostelen kurssikokeen kahdella tavalla. Normaalisti siten, että mukana ovat harjoitukset (max 10p), harjoitustyö (max 10 p) ja kurssikoe (max 40 p). Toiseksi myös siten, että mukana on harjoitustyö ja kurssikoe skaalattuna siten, että maksimi on 50 p. Arvosanaksi tulee parempi arvosana noista kahdesta mahdollisesta. Toivon kuitenkin, ettei tämä vähennä harjoitusten tekemistä ja niissä käyntiä. Sen on tarkoitus olla helpotus työssä käyville, jotka eivät välttämättä aina pääse aikataulujensa vuoksi harjoituksiin. Harjoitukset kannattaa kuitenkin tehdä, sillä ohjelmointia oppii parhaiten ohjelmoimalla. Myös ensimmäinen uusintakuulustelu/erilliskoe arvostellaan yllä mainitulla kahdella tavalla.
- [8.9.2008] Toisen harjoituksen linkki oli viime vuotiselle sivulle. Nyt se on korjattu. Kiitos tarkkaavaiselle opiskelijalle.
- [1.9.2008] Kurssille on perustettu uusi harjoitusryhmä: Ass. Liisa Marttinen TO 10-12 C222
- Koska englanninkieliseen ryhmään on ilmoittautunut myös suomenkielisiä opiskelijoita, niin tiedoksi, että ensimmäisellä kerralla 1.9.2008 englanninkielisessä ryhmässä käsitellään kurssin yleisiä asioita ym. ja 8.9 on englanninkielisen ryhmän ensimmäiset harjoitukset. Suomenkielisten ryhmien harjoitukset alkavat jo ensimmäisellä viikolla.
Luentoajat
2.9.-10.10. TI, PE 10-12 CK112Yo-opett. Päivi Kuuppelomäki
Harjoitusajat
Ryhmä 1: Päivi Kuuppelomäki 1.9-10.10 MA/MON 12-15 BK106 (in English)
Ryhmä 2: Tomi Jylhä-Ollila 4.9.-9.10. TO 16-18 B119
Ryhmä 3: Tomi Jylhä-Ollila 5.9.-10.10. PE 12-14 B119
Ryhmä 4: Tomi Jylhä-Ollila 5.9.-10.10. PE 14-16 B119
Ryhmä 5: Liisa Marttinen 4.9.-9.10. TO 10-12 C222
Kurssimateriaali
Kurssikirjana käytetään Tomasz Müldnerin kirjaa C for Java programmers , Addison-Wesley 2000, ISBN 0-201-70279-7 Kirjaan liittyvällä sivustolla on mm. luettelo havaituista virheistä, kirjan ohjelmakoodit, kalvosarja yms. materiaalia.
Jan Lindströmin vuosina 2000 ja 2001 laatima verkkomoniste on myös kurssin opiskelijoiden käytettävissä.
Muuta C-kirjallisuutta
Muita C-kielen oppikirjoja on runsaasti. Ehkä tärkein näistä on C-kielen klassikkoKernighan B.W. & Ritchie D.M.: The C Programming Language, 2nd ed. , Prentice Hall 1988. (ANSI C edition)
Kirja on saatavilla myös suomenkielisenä IT Pressin julkaisemana pocket-kirjana: Kernighan B.W. & Ritchie D.M.: Kernighan B.W. & Ritchie D.M.: Ohjelmointi (Pocket).
Kurssin aikataulu
Tämä aikataulu tarkentuu kurssin edetessä.
Kurssilla on 12 luentokertaa ja 6 harjoituskertaa.
Luentomateriaali
- Kurssin aloitus
Kalvot 2p, 6p - Tyypit, rakenteet ja makrot, kirjan luvut 3 ja 4
Kalvot 2p, 6p - Tekstitiedostot, esikääntäjä, makrot ja ehdollinen kääntäminen,
kirjan luvut 5 ja 6
Kalvot 2p, 6p - Funktiot, kirjan luku 7
Kalvot 2p, 6p - Osoittimet, kirjan luku 8
Kalvot 2p, 6p - Tietueet ja union sekä linkitetty lista, kirjan luku 11
Kalvot 2p, 6p - Merkkijonot ja komentoriviparametrit, Kirjan luku 9
Kalvot 2p, 6p - Taulukot ja binääritiedostot, Kirjan luvut 10 ja 8.14
Kalvot 2p, 6p - Modulaarinen ohjelmointi, Kirjan luku 14
Kalvot 2p, 6p - Bittioperaatiot
Kalvot2p, 6p
Kertaus
Kalvot2p, 6p
Harjoitukset/Exercises
1. harjoitus, 1. exercise2. harjoitus, 2. exercise
3. harjoitus, 3. exercise
4. harjoitus, 4. exercise
5. harjoitus, 5. exercise
6. harjoitus, 6. exercise
Harjoitustyö
Kurssiin liittyy harjoitustyö, jonka tekeminen aloitetaan 1. periodin lopulla. Harjoitustyön on valmistuttava ma 3.11 mennessä. Harjoitustöiden aiheet ja ohjeet on nyt julkaistu.
Sähköpostitse ja harjoituksissa sovitut aiheet ovat laitoksen intranetissä. Tarvitset laitoksen käyttäjätunnuksen ja salasanan päästäksesi lukemaan tuota tiedostoa. Tiedostossa voi olla virheitä ja puutteita, joten varmistathan oman aiheesi ja ilmoitat luennoijalle, jos nimesi puuttuu tai on väärän aiheen kohdalla.
Harjoitustyön ohjausta on saatavilla seuraavasti:
- ti 14.10 klo 9:30-10 työhuoneessa D228 Päivi Kuuppelomäki (vastaanotto aika)
- ti 14.10. klo 16-18 salissa CK110 Tomi Jylhä-Ollila
- pe 17.10. klo 12-14 salissa CK110 Tomi Jylhä-Ollila
- ti 21.10 klo 9:30-10 työhuoneessa D228 Päivi Kuuppelomäki (vastaanotto aika)
- to 23.10 klo 12-14 opintoneuvonta huoneessa A232 Liisa Marttinen
- ma 27.10 klo 12-14 työhuoneessa D214 Liisa Marttinen
- to 30.10. klo 16-18 salissa CK110 Tomi Jylhä-Ollila
- pe 31.10. klo 14-16 salissa CK110 Tomi Jylhä-Ollila
Kurssikoe
Kokeeseen saa ottaa yhden A4-arkin kokoisen muistilapun. Muistilapun käytön tarkoituksena on
- Vähentää huolimattomuusvirheitä.
- Mitata ohjelmointitaitoa edes hiukan oikeammanlaisessa tilanteessa. Normaalistihan ohjelmoidessa voi käyttää oheismateriaali apunaan.
- Yksinkertaistaa arvostelua, koska arvostelijan ei tarvitse sen jälkeen tulkita vastauksien puutteita mahdollisiksi unohduksiksi, vaan ne voidaan selkeästi käsitellä puutteellisina tai virheellisinä vastauksina.
Kurssikoe on alustavan suunnitelman mukaan to 16.10. klo 16-19 saleissa A111, B123. Aika ja sali kannattaa varmistaa laitoksen koeaikataulusta syksyn kurssikoelistasta. Uusintakuulustelu/erilliskoe on ti 18.11. klo 16-20 salissa A111. Aika ja sali kannattaa varmistaa laitoksen koeaikataulusta syksyn erilliskoelistasta.
Kurssin arvostelu
Kurssin kokonaispistemäärä on 60, kuten yleensä laitoksen kursseilla. Arvosana määräytyy myös yleisen mallin mukaan, eli 30 pisteellä saa 1 ja siitä arvosana nousee viiden pisteen välein, kunnes 50 pisteellä saa arvosanan 5.
Kurssin kokeesta saa maksimissaan 40 pistettä. Kurssi läpäisemiseen kokeesta on saatava vähintään puolet pisteistä eli 20 pistettä.
Kurssin harjoitustehtävistä saa maksimissaan 10 pistettä.
tehtyjä tehtäviä pisteitä vähintään 24 10 vähintään 21 9 vähintään 19 8 vähintään 16 7 vähintään 14 6 vähintään 11 5 vähintään 9 4 vähintään 6 3 vähintään 4 2 vähintään 1 1Samoin harjoitustyöstä saa maksimissaan 10 pistettä. Kurssi läpäisemiseen tarvitaan vähintään 3 pistettä harjoitustyöstä. Tiedot harjoitustyön pisteytyksestä tulee harjoitustyöohjeeseen.
Kiinnostavia linkkejä
Tähän listaan tulee linkkejä, joita löydämme tai joista kerrotte meille. Näiden linkkien tavoitteena on tukea itsenäistä C-kielen opiskelua.
- C-ohjelmoinnin perustyökalut Unixissa
- comp.lang.c Answers to Frequently Asked Questions (FAQ List)
- The Ten Commandments for C Programmers
- The Top 10 Ways to get screwed by the "C" programming language
- Jukka Korpelan linkkisivut C-kieleen liittyvistä sivustoista
- http://www.ohjelmointiputka.net/oppaat.php suomenkielisiä oppaita eri ohjelmointikielille myös C:lle.
- http://www.programmersheaven.com/ Erilaisia kehitystyökaluja ja koodin pätkiä useille eri kielille myös c:lle
- Oulun yliopiston C-ohjelmointi
- Valgrind
English version
In the Fall 2008 course will be lectured in Finnish. There will be an exercise group in English (MON 12-15 BK106). On monday 1st of Sept. in the exercise group is explained the course structure etc. The exercises start in the English group a week later than in the Finnish groups.
Project works
(these are not exactly the same as for Finnish speaking students)
Instructions
for the programming in C project
Sivu luotu 22.8.2008, Päivi Kuuppelomäki