Back to all courses

C-ohjelmoinnin perusteet

Individual course

Tämä kurssi on LUTin C-ohjelmoinnin peruskurssi, joka edellyttää ohjelmoinnin perusteiden osaamista. 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.

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.

Kurssin laajuus vastaa 81 tunnin työpanosta. Kurssi edellyttää ohjelmoinnin perusteiden osaamista ja kurssilla käsitellään C-kielen uudet konseptit sekä erot Python-kielen ratkaisuihin. Palautteen perusteella tämän kurssin suorittaminen vaatii tietoista panostamista käsiteltävänä olevaan asiaan.

Ohjelmointia harjoitellaan ohjelmia tekemällä. Kurssi etenee 7 viikon aikana luentojen ja viikkotehtävien rytmittämänä. Kurssin suorittamisen tukena on Piazza-keskustelufoorumi, jossa opiskelijat voivat kysyä neuvoa ja antaa vinkkejä muille kurssia suorittaville. Myös LUTin henkilökunta seuraa keskustelupalstaa ja vastaa kysymyksiin tarpeen mukaan.

Kurssin ainoa läsnäoloa edellyttävä tapahtuma on sähköinen EXAM-tentti, jonka voi tehdä Lappeenrannassa, Mikkelissä ja Lahdessa. Tentissä on käytössä Linux-ohjelmointiympäristö ja tentissä tulee palauttaa toimiva ohjelma arvioitavaksi.

Sisältö

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

Tavoitteet

Kurssin jälkeen opiskelija osaa

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

Oppimateriaalit

Kurssin oppimateriaaleja ovat LUTin C-ohjelmointiopas, ohjelmointivideot sekä luentokalvot ja -videot. Kaikki materiaalit ovat saatavilla kurssin Moodle-ympäristössä, jonne tulevat viikoittain tiikkotehtävien tehtävänannot. Itse tehdyt ohjelmat palautetaan Moodleen, jossa automaattitarkastus arvioi ohjelmien oikean toiminnan ja antaa palautteen niistä välittömästi.

Kurssilla sekä EXAM-tentissä käytetään gcc-kääntäjää Linux-käyttöjärjestelmässä. Kurssilla käydään läpi Linux-virtuaaliympäristön asennus. Linux-ympäristöä voi käyttää myös etäyhteyden kautta LUTin palvelimelta, joten kurssin tekeminen ei edellytä omaa Linux-järjestelmää.

Esitietovaatimukset

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

Kurssiaikataulu

Kurssilla on tehtäviä, jotka tulee tehdä ja palauttaa viikoittain. Harjoitustyön tekemiseen on aikaa noin kaksi (2) viikkoa. Kurssista järjestetään 3 tenttimahdollisuutta maalis-huhtikuussa 2022, jolloin tenttijät voivat varata itselleen sopivan tenttiajan noin kahden viikon ajanjaksolta ja käydä tentissä. Tarkemmat aikataulut löytyvät kurssin alkaessa Moodlesta.

Suoritustapa

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

Kurssiin liittyy kolme osasuoritusta:

  • 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äviä on kurssin alkuvaiheessa 5 kpl viikoittain ja loppukurssista vähemmän. Viikkotehtävät tulevat tehtäväksi viikoittain ja ne tulee palauttaa viikoittain.
  • Harjoitustyö: Harjoitustyö julkaistaan kurssin viimeisellä luentoviikolla ja sen tekemiseen on aikaa noin kaksi viikkoa. Tarkemmat ohjeet ja aikataulut tulevat kurssin Moodle-sivulle.
  • EXAM-tentti

Arviointiskaala ja arviointimenetelmät

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

Haluatko opiskella ensin ohjelmoinnin perusteita? Klikkaa tästä!

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
Monica Sandberg, Student services specialist
Start here
Start here
Category:
ICT Studies
Topic:
Programming
Course code:
CT60A2500
Credits:
3 ECTS
Price:
0 €
Level:
Teaching period:
10.1.–22.4.2022
Application deadline:
Application period has ended
Host university:
LUT University
Study is open for:
Adult learner,
Degree student
Teaching methods:
Blended
Place of contact learning:
Lappeenranta
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