Print as pdf if you want a pdf! If you want a nicer printout, click off the browser's automatically added header and footer.

Blekinge Institute of Technology
Department of Computer Science

Revision: 1
Reg.no:


Course syllabus

Programming in C

Programming in C

6 credits (6 högskolepoäng)

Course code: DV1727
Main field of study: Computer Science, Software Engineering
Disciplinary domain: Technology
Education level: First-cycle
Specialization: G1F - First cycle, has less than 60 credits in first-cycle course/s as entry requirements

Language of instruction: Swedish
Applies from: 2025-03-13
Approved: 2025-03-13

1. Descision

This course is established by Dean 2024-09-27. The course syllabus is approved by Head of Department of Computer Science 2025-03-13 and applies from 2025-03-13.

2. Entry requirements

Admission to the course requires completed courses of an amount of 12 credits in programming, as well as taken courses in computer organization.

3. Objective and content

3.1 Objective

To develop knowledge in low-level programming for further studies in computer science and to solve tasks in the workplace.

3.2 Content

  • Operators,
  • data types,
  • number systems,
  • pointers,
  • memory management,
  • bit operations,
  • libraries,
  • low-level I/O,
  • file handling,
  • performance aspects,
  • Synchronization with shared memory,
  • parallel programming using threads, and the problems that may arrise due to concurrency.

4. Learning outcomes

The following learning outcomes are examined in the course:

4.1. Knowledge and understanding

On completion of the course, the student will be able to:

  • Explain various C programs and language constructs,
  • handle common problems in parallel programming.

4.2. Competence and skills

On completion of the course, the student will be able to:

  • Implement structured solutions in C, both as an application and as a library
  • use existing libraries, both static and dynamic,
  • implement parallel programs,
  • manage memory,
  • handle file I/O for both binary and ascii.

5. Learning activities

In the course, programming in C is introduced and practiced through lectures, seminars, and exercises. Initially, the focus is on syntax, compilation, error handling, and more C-specific aspects such as pointers, pointer arithmetic, and memory management. Subsequently, I/O, parallel programming, file handling, etc., are introduced. We go through program libraries, how to use them, and how to create them yourself. We also cover how to write tests to test your programs. The course consists of three examination components: the first component is a check on the handling of syntax. The second component is a programming task where you need to demonstrate your ability to apply your knowledge to solve a short task. The third component is a somewhat larger programming task, which you can only start if you have passed the first two components.

6. Assessment and grading

Modes of examinations of the course

Code Module Credit Grade
2511 Laboratory Session 1 2 credits GU
2521 Laboratory Session 2 2 credits GU
2531 Written assignment 2 credits GU

The course will be graded G Pass, Ux Failed result, a little more work required, U Fail.

The examiner may carry out oral follow-up of written examinations.

The information before the start of the course states the assessment criteria and make explicit in which modes of examination that the learning outcomes are assessed.

An examiner can, after consulting the Disability Advisor at BTH, decide on a customized examination form for a student with a long-term disability to be provided with an examination equivalent to one given to a student who is not disabled.

7. Course evaluation

The course evaluation should be carried out in line with BTH:s course evaluation template and process.

8. Restrictions regarding degree

The course can form part of a degree but not together with another course the content of which completely or partly corresponds with the contents of this course.

9. Course literature and other materials of instruction

Jens Gustedt, Modern C, 2019

Reference Literature:
Brian W Kernighan, Dennis Ritchie, The C Programming Language, 2nd edition, 1988
Jonas Skeppstedt and Christian Söderberg, Writing Efficient C Code, 2nd Edition, 2016

10. Additional information

This course replaces DV1580