Computer Science

Faculty of Engineering, LTH

Denna sida på svenska This page in English

EDAA25 - C Programming

News 2019

  • Congratulations to Jakob Hök for winning this year's competition in writing memory efficient code!!
  • An introduction to the UNIX terminal.
  • Course responsible: Jonas Skeppstedt
  • Literature: Jonas Skeppstedt/Christian Söderberg: Writing Efficient C Code. For more information about the course book, see its site here. The book may still be available at KFS but all distribution will be moved to print-on-demand through Amazon (for a European site, it is printed in Europe and the German site has free shipping to Sweden starting at EUR 39).
  • Kursombud: TBD.
  • When you need help in the course, you should use your lecturer's office hours, which are 12.30 - 13.00 every week day during the course.
  • Note that you are not permitted to write the exam before you have passed all three assignments. 
  • If you would like to join the course after it has started, just make a solution to any of the assignments below (rpn, word, or poly) and send a mail to with a subject line such as "assignment rpn by your_stil_id" and attach a program in a file such as rpn.c --- the file must have the same name as the assignment.
  • Schedule

Programming in C is easiest on UNIX (such as Linux or MacOS X), and if you are using a non-UNIX operating system some options to access UNIX are:

  • Use the PuTTY program to login remote to the Linux computers at the university: connect to
  • Install VirtualBox (from Oracle) and then install for instance Ubuntu there. 
  • Use dual booting so that you select operating system when you start the computer --- probably easiest with Ubuntu.
  • Use the Ubuntu package available from Microsoft's app store
  • ContentsPages (LTH printing)
    F1 Introduction to C41-80 (37-74)
    F2 malloc/free, strings, lists80 - 111 (74 - 100)
    F3 Types, conversions, linkage261 - 302 (243 - 282)
    F4 Declarations325 - 382 (305 - 359)
    F5 Expressions and the C preprocessor383 - 438 (361 - 415)
    F6 Statements and more about the C library413 - 420, 439 - 616 (391 - 398, 417-580)
    F7More library functions and old exam



There will be a written exam. See the reading advice on the left!



Programming assignments

The three programming assignments are compulsory and the deadlines are strict. You must email your code to  If you miss a deadline you are invited to take the course next year. See the detailed rules to the left!

It is especially important that you use the correct Subject line when you email your solutions! It should be of the following form: assignment rpn by stil

You should NOT hand in a paper version since the assignments are graded by a program (actually several programs).

About 5 minutes after you have mailed your code, you should get a reply!

See the menu to the left where a PDF with the exercises can be found under Programming Assignments!

The full scores you can see in the table below, is last year's score (for you to compare with). These tables will be updated after the deadline. 


AssignmentDeadlineExercise in the book Winner 2019Results
rpn19/4 at 15.001.5scores
word3/5 at 15.001.8scores
poly17/5 at 15.00 1.7