Authorised by Academic Registrar, April 1996
Objectives At the completion of this subject students should understand how to design and the skills to code a computer program to solve correctly a stated problem; know how to design adequate data to test the stated problem, and understand how to interpret adequately the results of that testing; know about structured design techniques and understand how to apply this knowledge to produce a structured solution to stated programming problems; and be able to apply the programming techniques learnt, through the C programming language.
Synopsis Introductory topics about computers: DOS directories and files, directory structure, basic command line commands. Editors and text files. Structure of a simple C program. Data items and data types. Arithmetic in C. Overflow, precedence in arithmetic. Functions. Passing data by value and reference, prototyping, simple scoping, guidelines for writing functions. Simple input and output in C. Design concepts: steps in developing a program, top-down design, structured programming constructs, the structure chart, functional decomposition, coupling. Testing: test strategies, test plan, input data, expected results, testing heuristics. Selection constructs in C. Repetition: iteration and recursion in C. The C pre-processor. Simple pointers. One-dimensional arrays. Strings. Project files.
Assessment Unit tests: 20% + Examination (3 hours): 50% + Practical work: 30%