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 |
Pre-requisites |
None |
Co-requisites |
None |
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.
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.
36 lectures and 72 hours of laboratory sessions. A further 192 hours are nominally set aside for coursework, private study, etc.
100% Practical Work. 4/5 small programs ticked off and 4/5 small program under exam conditions (30%).
Two major projects (30% & 40%).
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