Students who successfully complete the course should be able to:
Describe features and properties of software written in C.
Recognise bugs in software and describe how to correct them.
Describe efficient data structures and explain how they can be implemented in software.
Design and manage efficient C programs for numerical simulations
Solve technical and numerical problems using the C programming language.
Structure and Content
The C programming language is introduced and them explored in detail. The focus is on writing programs to solve the numerical problems that occur in scientific and technical computing and on implementing the relevant algorithms efficiently and robustly. The course begins by describing the essential features of the language and how to compile source files to make executables. After covering basic properties of the data types and functions the course will cover memory management, file input and output and structures. Throughout the course, topics are introduced and developed through example programs.