Siirry suoraan sisältöön

C Programming (5 op)

Toteutuksen tunnus: TX00GL99-3001

Toteutuksen perustiedot


Ilmoittautumisaika
25.05.2025 - 31.12.2026
Ilmoittautuminen toteutukselle on käynnissä.
Ilmoittaudu toteutukselle OMAssa
Ajoitus
25.05.2025 - 31.12.2026
Toteutus on käynnissä.
Opintopistemäärä
5 op
Virtuaaliosuus
5 op
Toteutustapa
Etäopetus
Yksikkö
ICT ja tuotantotalous
Toimipiste
Karaportti 2
Opetuskielet
englanti
Paikat
0 - 500
Koulutus
Tieto- ja viestintätekniikan tutkinto-ohjelma
Opettajat
Virve Prami
Vastuuopettaja
Janne Salonen
Ryhmät
CAMPUSONLINE_TIVI_NONSTOP
CampusOnline toteutukset (TiVi NonStop)
Opintojakso
TX00GL99
Toteutukselle TX00GL99-3001 ei löytynyt varauksia!

Tavoitteet

This course prepares you to understand and apply key programming concepts using one of the most influential rogramming languages in history. With its hands-on approach and clear progression, the course enables you to:

- Understand the basics of algorithms and structured programming.
- Write and debug interactive C programs.
- Use arrays, functions, loops, and conditionals effectively.
- Manipulate data using pointers, structs, and files.
- Manage memory dynamically and work with advanced features like unions, enums, and bitwise operations.
- Grasp low-level mechanisms such as storage classes, function pointers, and preprocessor macros.

By mastering these skills, you will be ready to take on new challenges in software development, embedded systems, or academic programming projects.

Sisältö

Module 1: Introduction to Programming
In this module, you will explore the foundational principles of programming, including how computers process instructions, how programs are structured, and how to design, write, and interact with simple C programs. The lessons guide you step by step from abstract thinking to practical implementation using the C programming language.

Module 2: Structured Programming
In this module, you will learn how to build programs that make decisions, repeat actions, and handle collections of data efficiently. These skills allow you to create more dynamic and interactive programs. You will explore conditional statements, loops, and arrays using the C programming language.

Module 3: Modular Programming
In this module, you will learn how to structure your C programs into modular components using functions and global variables. Modular programming helps you write reusable, maintainable, and organized code by dividing programs into logical building blocks. You’ll also explore the switch...case statement, which allows cleaner decision-making in multi-branch situations.

Module 4: Data Structures
In this module, you will deepen your understanding of data handling in C by learning to work with more advanced data structures and memory management techniques. You will explore strings, records, files, pointers, multidimensional arrays, dynamic memory, and linked data structures. These tools are essential for building efficient, flexible, and real-world C programs.

Module 5: Special Features of the C Language
In this module, you will explore advanced features of the C language that give you greater control over how programs behave and manage memory. These topics will deepen your understanding of how C works under the hood and allow you to write more efficient, flexible, and portable programs. You will learn about variable storage duration and scope, macros and preprocessing, command-line arguments, and how to work with low-level data using unions, bitwise operations, bit fields, and function pointers.

Final Test

Aika ja paikka

All content is accessed directly through Moodle, allowing you to study at your own pace and on your own schedule.

Oppimateriaalit

Can be find via course pace.

Opetusmenetelmät

This course includes:

- 5 learning modules
- Hands-on programming exercises
- Module-specific quizzes
- Final test to assess overall understanding

All content is accessed directly through Moodle, allowing you to study at your own pace and on your own schedule.

Harjoittelu- ja työelämäyhteistyö

N/A

Tenttien ajankohdat ja uusintamahdollisuudet

Before taking the Final Test, make sure you have fully completed all course modules:

- Module 1–5 Theory Lessons
- Practice Exercises in each module
- Module Quizzes after each theory section

Completing all Practice Exercises and Quizzes is mandatory to unlock the Final Test. Once you have successfully completed them, the Final Test will become available.

Kansainvälisyys

N/A

Toteutuksen valinnaiset suoritustavat

N/A

Opiskelijan ajankäyttö ja kuormitus

Depends on Students starting level.

Sisällön jaksotus

Before taking the Final Test, make sure you have fully completed all course modules:

- Module 1–5 Theory Lessons
- Practice Exercises in each module
- Module Quizzes after each theory section

Completing all Practice Exercises and Quizzes is mandatory to unlock the Final Test. Once you have successfully completed them, the Final Test will become available.

Lisätietoja opiskelijoille

Toisten korkeakoulujen ristiinopiskelun opiskelijat ilmoittautuvat verkkokursseille oman kotikorkeakoulunsa opintotietojärjestelmän ristiinopiskelupalvelun kautta.

Metropolian tutkinto-opiskelijat eivät ilmoittaudu verkkokursseille OMAn kautta vaan tästä linkistä löytyvien ohjeiden mukaisesti: https://users.metropolia.fi/~salja/nonstoplinkit/index.htm

Arviointiasteikko

Hyväksytty/Hylätty

Arviointikriteeri, hyväksytty/hylätty

Pass after all of five (5) Modules and the Final Test has been done.

Arviointimenetelmät ja arvioinnin perusteet

Pass after Student has fully completed all course modules and Final Test has been passed.

? Module 1–5 Theory Lessons
? Practice Exercises in each module
? Module Quizzes after each theory section

The Final Test consists of:
- 40 automatically graded questions (multiple choice, matching, and true/false)
- 5 short programming exercises

You must complete both parts to pass the test and receive a grade.

Esitietovaatimukset

There are no formal prerequisites. Basic computer usage skills (such as file handling and typing) are sufficient. The course starts from the ground up, making it an ideal starting point for new programmers.

Siirry alkuun