58127 C-ohjelmointi (4 op /2 ov) Syksy 2009
Syksyn 2009 C-kurssi käsittää luennot, harjoitukset, ohjausajat, harjoitustyön ja kurssikokeen. Luennot on ensimmäisellä periodilla ja toisen periodin alussa on viimeistään palautettava harjoitustyö.Kurssin oppimistavoitteet
Ajankohtaista
- [7.12.2009] Uusintakokeen/Erilliskokeen tulokset.
- [3.12.2009/7.12.2009] Kurssikokeen tulokset HUOM! Tulokset niiltä osin kuin harjoitustyöt on tarkastettu ja hyväksytty.
- [18.11.2009] Kurssikokeen arvostelusta.
- [12.11.2009] Kokeen palautetilaisuus on ke 18.11 klo 15-16 huoneessa D228. Ilmoittakaa, jos huomaatte kirjausvirheitä/puutteita laskuharjoituspisteissä, moduulien pisteissä (kirjattu harjoitustyöksi 1) tai vertaispalautteen kirjauksessa (kirjattu harjoitustyöksi 2).
- [12.11.2009] Laskuharjoitusten pisteytyksen tiedot lisätty arvostelu kohtaan.
- [5.11.2009]Tiedot tehdyistä harjoitustehtävistä ja koepisteistä on saatavilla intranetistä. Harjoitustustyö 1:ssä on pisteet palautetusta harjoitustyöhön liittyvästä moduulista. Harjoitustyö 2:ssa on pisteet vertaispalautteesta.
- [14.10.2009] Vertaispalaute annetaan viimeistään ke 21.10 ja linkki on kohdassa "Harjoitustyöhön liittyvän moduulin vertaispalaute".
- [7.10.2009] Harjoitustyön ohjeeseen on linkki harjoitustyö kohdassa.
- [28.9.2009] Kurssilla on Moodle-alue, jonkan kautta palautetaan yksi kotitehtävä ja harjoitustyö. Ensimmäisen kerran kirjautuessasi tarvitset sanaa 'htyo'.
- [8.9.2009] Tiistaille on perustettu uusi laskuharjoitusryhmä ja ohjausaika.
Luentoajat
8.9.-13.10. TI 10-12 CK112Yo-opett. Päivi Kuuppelomäki
Harjoitusajat
Ryhmä 1: Päivi Kuuppelomäki 7.9-19.10 MA/MON 12-15 CK111 (in English,
excercise session and lectures)
Ryhmä 2: Harri Hämäläinen 9.9.-14.10. KE 12-14 BK107
Ryhmä 3: Tomi Jylhä-Ollila 10.9.-15.10. TO 16-18 B119
Ryhmä 4: Tomi Jylhä-Ollila 8.9.-13.10. TI 12-14 C222
Ohjausaika: Tomi Jylhä-Ollila 8.9.-13.10. TI 14-16 B121
Ohjausaika: Tomi Jylhä-Ollila 9.9.-14.10. KE 10-12 B221
Ohjausaika: Harri Hämäläinen 10.9.-15.10. TO 10-12 B221
Ohjausaika: Päivi Kuuppelomäki 11.9.-16.10. PE/FRI 10-12 B121 (in English,
guidance in a computer classroom)
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 6 luentokertaa, 6 ohjaustilaisuutta ja 6 harjoituskertaa.
Luentomateriaali
- Kurssin aloitus, linkittäminen, kääntäminen
Kalvot Väri - Tyypit, rakenteet ja makrot, kirjan luvut 3 ja 4
Kalvot Väri, - Tekstitiedostot, esikääntäjä, makrot ja ehdollinen kääntäminen,
kirjan luvut 5 ja 6
Kalvot Väri, - Funktiot, kirjan luku 7
Kalvot Väri, - Osoittimet, kirjan luku 8
Kalvot Väri - Tietueet ja union sekä linkitetty lista, kirjan luku 11
Kalvot Väri - Bittioperaatiot
Kalvot Väri - Merkkijonot ja komentoriviparametrit, Kirjan luku 9
Kalvot Väri - Taulukot ja binääritiedostot, Kirjan luvut 10 ja 8.14
Kalvot Väri - Modulaarinen ohjelmointi, Kirjan luku 14
Kalvot Väri
- Kertaus
KalvotVäri
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öhön liittyvän moduulin vertaispalaute
Vertaispalaute annetaan viimeistään ke 21.10.2009. Ohje on intranetissä.Harjoitustyö
Kurssiin liittyy harjoitustyö, jonka tekeminen aloitetaan 1. periodin lopulla.
Harjoitustyön on valmistuttava ma 9.11 mennessä. Harjoitustöiden aiheet.
Harjoitustyön voi tehdä ryhmässä (2-3 henkilöä) tai yksilötyönä. Mikäli teet työn ryhmässä työstä palautetaan lisäksi selvitys osallistujen osuudesta työhön. Ryhmätöiltä edellytetään, että niissä on myös testimoduuli tietorakennemoduuleille.
Työt palautetaan moodlen kurssisivujen kautta.
Harjoitustyön ohjausta on saatavilla ohjausaikojen yhteydessä ja ohjeet on nyt julkaistu.
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 22.10. klo 16-19 salissa A111. Aika ja sali kannattaa varmistaa laitoksen koeaikataulusta syksyn kurssikoelistasta. Uusintakuulustelu/erilliskoe on ti 17.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 6 pistettä.
tehtyjä tehtäviä pisteitä vähintään 23 6 vähintään 19 5 vähintään 14 4 vähintään 10 3 vähintään 5 2 vähintään 1 1
Palautettavista tehtävistä saa 2 pistettä ja niiden arvioinnista 2 pistettä. 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
- Programming Tutorials
English version
In the Fall 2009 course will be lectured in Finnish. There will be an exercise group in English (MON 12-15 CK111). On monday 7th 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.
News
- [18.11.2009] Grading of the course exam.
- [12.11.2009] You can ask about grading on wed 18th Nov 15:00-16:00 room D228. If you find any errors or some points missing please send an email to the lecturer.
- [5.11.2009] checklist
Project works
(these are not exactly the same as for Finnish speaking students)
Guidance for the feedback to the module of the project work.
Instructions
for the programming in C project
Course exam is according to preliminary plans, Thu 22/10 16:00-19 in Exactum A111. To be sure please check the time and place from Course exams autumn 2009 .
Course exams last 2 hours and 30 minutes.
Separate exam is according to preliminary plans, Tue 17/11 16:00-19 in Exactum A111. To be sure please check the time and place from Separate exams in autumn 2009 . Separate exam is allowed only to students who have completed the obligatory project work included in course Programming in C.
Separate exams last 3 hours and 30 minutes.
Sivu luotu 28.8.2009, Päivi Kuuppelomäki