Skip to main content

Unit information: Programming in C in 2016/17

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Programming in C
Unit code COMSM1211
Credit points 20
Level of study M/7
Teaching block(s) Teaching Block 1 (weeks 1 - 12)
Unit director Dr. Campbell
Open unit status Not open




School/department Department of Computer Science
Faculty Faculty of Engineering


This unit teaches the student how to program in the language C. It covers the basic syntax of the language and introduces the students to algorithms, data structures and file structures for searching, sorting, string processing, tree searching. Some analysis of algorithms is undertaken with the coverage of topics such as big O notation; logarithmic, linear, polynomial, and exponential algorithms; and simple analysis of space and time complexity of algorithms.

Intended learning outcomes

Successful completion of this unit will enable you to program competently and apply good software engineering techniques, implement a set of standard algorithms, appreciate the importance of space and time complexity of algorithms, appreciate the difficulties which arise in large-scale software production.

Teaching details

36 lectures and 72 hours of laboratory sessions. A further 192 hours are nominally set aside for coursework, private study, etc.

Assessment Details

100% Practical Work. 4/5 small programs ticked off and 4/5 small program under exam conditions (30%).

Two major projects (30% & 40%).

Reading and References

Al Kelley and Ira Pohl. C by Dissection: The Essentials of C Programming. Addison-Wesley. 2001. 4th edition. ISBN: 0201713748 Background

Brian W. Kernighan and Dennis M. Ritchie. The ANSI C Programming Language (2nd edition). Prentice Hall. 1988. ISBN: 0131103628 Background

T. Standish Data Structures, Algorithms and Software Principles in C. Addison-Wesley. 1994. ISBN: 0201591189 Background