Back to all courses

C-ohjelmoinnin perusteet (kesätoteutus)

Individual course

Tämä kurssi on LUTin C-ohjelmoinnin peruskurssi, jolla käsitellään C-kielen uudet konseptit sekä erot Python-kielen ratkaisuihin. Tämän kurssin tavoitteena on tutustua C-kielen erityispiirteisiin, saada rutiinia pienien C-ohjelmien tekemiseen ja tutustua C-kielen ratkaisuihin ohjelmien koon kasvaessa. Näin ollen kurssi valmistaa sen suorittajia ammattimaisiin ohjelmointitehtäviin.

Kurssi sopii erityisesti tutkinto-opiskelijoille, jotka haluavat suorittaa yliopistotason C-ohjelmointikurssin pääosin etäopiskeluna. Kurssi sopii myös aikuisopiskelijoille, mutta jos tavoitteena on tutustua C-ohjelmointiin, on LUTin Ohjelmointi C-kielellä -kurssi sopivampi, sillä sen pystyy tekemään kokonaan etänä omassa tahdissa eikä siihen liity harjoitustyötä. Ohjelmoinnin ensimmäisenä kielenä LUTissa suositellaan Pythonia ja Johdanto ohjelmointiin -kurssi on suunniteltu erityisesti ohjelmointiin tutustumista varten.

Kurssin laajuus vastaa 81 tunnin työpanosta. Palautteen perusteella tämän kurssin suorittaminen omatoimisesti kahden kuukauden aikana vaatii tietoista panostamista asiaan.

Kurssin sisältö

C-ohjelmointikieli, osoittimet ja dynaaminen muistinhallinta, hyvä ohjelmointityyli ja make.

Osaamistavoitteet

Kurssin jälkeen opiskelija osaa

  • luoda pieniä ohjelmia C-ohjelmointikielellä hyödyntäen peruskäskyjä, tietorakenteita ja kirjastoja.
  • tehdä useista aliohjelmista ja tiedostoista muodostuvan ohjelman, jotta ohjelma on helppo ymmärtää, ylläpitää ja laajentaa.
  • käyttää osoittimia ja dynaamista muistinvarausta linkitettyjen listojen luomiseen ja hallitsemiseen.
  • käyttää make-ohjelmaa ohjelmien kääntämiseen.

Esitietovaatimukset

Kurssin suorittaminen edellyttää ohjelmoinnin perusteiden osaamista, jotka käsitellään esim. LUTin kurssilla Ohjelmoinnin perusteet. Linux-käyttöjärjestelmän perustiedot helpottavat toimintaa Linux-ympäristössä ja nämä asiat käsitellään esim. LUTin kurssilla CT30A3231 Linuxin perusteet.

Kurssimateriaali

Kaikki kurssimateriaalit ovat suomenkielisiä ja ne ovat saatavilla kurssin Moodle-ympäristössä ml. LUTin C-ohjelmointiopas, videot ja luentokalvot. Viikkotehtävien tehtäväksiannot ovat Moodlessa ja itse tehdyt ohjelmat palautetaan Moodleen, jossa automaattitarkastus arvioi ohjelmien oikean toiminnan ja antaa palautteen välittömästi.

Kurssin ohjelmointiympäristön asennusohje löytyy C-ohjelmointioppaan liitteenä ja sen lähtökohtana on Windows-käyttöjärjestelmä, WSL, Visual Studio Code -editori, gcc-kääntäjä ja make Ubuntu Linuxissa. EXAM-tentissä on käytössä Linux-ympäristö, jossa on käytössä samat ohjelmointityökalut. Linux-ympäristöä voi käyttää etäyhteyden kautta LUTin palvelimelta.

Ohjelmat kannattaa tehdä omalla koneella omassa ohjelmointiympäristössä. EXAM-tentissä ohjelmointiympäristönä toimii etäyhteyden kautta LUTin Horizon Linux. Kurssin suorittamisen tukena on keskustelufoorumi, jossa kurssilla olevat voivat kysyä neuvoa ja saada vastauksia. Kurssin aikana on tarjolla ohjaustuokioita, joiden aikana kurssin tukihenkilöt antavat henkilökohtaista etäneuvontaa tehtävien tekemiseen.

Opetus

Luentovideoita 8 h, omatoiminen opiskelu 14 h, pakollisten tehtävien teko 49 h. Tenttiin valmistautuminen 7 h ja tentti 3 h. Kokonaismitoitus 81 h.

Kurssin voi tehdä LUTin Moodle-ympäristössä 1.6.–31.7. itsenäisesti etäopiskeluna omassa aikataulussa tenttiä lukuun ottamatta.

Kurssi koostuu 7 osasta, jotka käsitellään lähiopetuskurssilla viikoittain ja siksi tälläkin kesäkurssilla puhutaan viikkotehtävistä. Kesäkurssilla tehtävien ainoa aikarajoite on, että kaikki tehtävät tulee palauttaa viimeistään 31.7. Muut aikataulut ovat suosituksia, joiden tavoitteena on auttaa kurssin tekemistä.

Suoritustapa

Kurssi etenee viikoittain lukujärjestyksen mukaisesti. Kaikki materiaalin voi käydä läpi omassa aikataulussa viikoittain. Tehtävien ja harjoitustyön palautukselle sekä tentille on aikataulut, jotka löytyvät Moodlesta kurssin alkaessa.

Palauttamalla kaikki kurssin tehtävät viimeistään 31.7. ja tekemällä tentin hyväksytysti elokuun loppuun mennessä kurssi kirjataan tehdyksi lukuvuonna 2023–2024. Syyskuussa tentin hyväksytysti tehneiden kurssisuoritus kirjataan lukuvuodelle 2024–2025.

Kurssilla on kolme erilaista tehtävätyyppiä ja ne tulevat saataville kurssin edetessä seuraavina kokonaisuuksina:

  • Ohjelmointitehtävät eli viikkotehtävät

Ohjelmointitehtäviä on yhteensä 30 kpl ja tekemällä niistä 15 eli 50 % saa arvosanan 1, 60 %:lla saa arvosanan 2 jne. Kokonaispistemäärä ja arvosana ovat näkyvillä arviointikirjassa. Tehtävät tulevat näkyville kolmessa vaiheessa:

  1. Luennot 1-2: 10 tehtävää, näkyvissä ja tehtävissä kurssille ilmoittautuneille opiskelijoille.
  2. Luennot 3-4: 10 tehtävää, tulevat näkyville ja tehtäväksi kun on tehnyt kaikista kurssin tehtävistä 20 % (6 kpl).
  3. Luennot 5-7: 10 tehtävää, tulevat näkyville ja tehtäväksi kun on tehnyt kaikista kurssin tehtävistä 40 % (12 kpl).
  • Harjoitustyö

Harjoitustyön tehtäväksianto tulee saataville, kun on saanut ohjelmointitehtävistä hyväksytyn arvosanan.

Harjoitustyön Palautus 1 on 15.7.2024 klo 6.00. Palauttamalla harjoitustyön Palautus 1:nä sen voi tarvittaessa korjata ja palauttaa uudestaan Palautus 2:na. Työn voi palauttaa myös aiemmin, jolloin se pyritään arvioimaan 1 viikon kuluessa.

Harjoitustyön Palautus 2 on 31.7.2024 klo 23.55. Palautus 2 -työt arvioidaan, mutta hylättyjä töitä ei voi lähtökohtaisesti korjata ja palauttaa uudestaan, koska kurssi päättyy heinäkuun loppuun.

  • EXAM-tentti

Kurssilla on sähköinen EXAM-tentti, jonka voi tehdä Lappeenrannassa, Mikkelissä tai Lahdessa LUTin ylläpitämissä EXAM-luokissa. Huom. tenttiä ei voi tehdä tenttivierailuna missään toisessa yliopistossa/korkeakoulussa käytettävän Linux-ohjelmointiympäristön vuoksi. Ensimmäinen tenttimahdollisuus on 15.–31.7., toinen 1.–17.8. ja kolmas 16.–30.9.

Arviointiskaala ja arviointimenetelmät

Kurssin loppuarvosana on numero 0–5 ja se muodostuu seuraavista osa-alueista ja painoarvoista: tentti 50 %, harjoitustyö 25 %, viikkotehtävät 25 %. Kaikki osa-alueet ovat pakollisia eli niistä kaikista on saatava vähintään arvosana 1.

Lisätietoja LUT-yliopiston opinto-oppaassa.

Tämän kurssin suorituksesta on mahdollista saada digitaalinen suoritusmerkki.

C-ohjelmointikieli osoittimet dynaaminen muistinhallinta hyvä ohjelmointityyli make Linux ohjelmointitehtävät peruskurssi

Further information about the studies

LUT University
Uolevi Nikula, ICT coordinator

Contact person for applications

FITech Network University
Fanny Qvickström, Student services specialist
Start here
Start here
Topic:
Programming
Course code:
CT60A2500
Study credits:
3 ECTS
Price:
0 €
Course level:
Teaching period:
1.6.–31.7.2024
Application start date:
04.04.2024
Application deadline:
18.5.2024
Host university:
LUT University
Who can apply:
Adult learner,
Degree student
Teaching method:
Blended
Place of contact learning:
Lappeenranta
Teaching language:
Finnish
General prerequisites:
Knowledge of basic programming concepts. Basic knowledge of Linux operating systems helps to operate in the Linux environment.
Interested in this course? Subscribe and get updates about the course directly to your email. You can cancel subscription any time you want.

This course is included in the following theme