Module Information
Module Identifier
CS23820
Module Title
C and C++
Academic Year
2025/2026
Co-ordinator
Semester
Semester 1
Pre-Requisite
Pre-Requisite
Reading List
Other Staff
Course Delivery
Assessment
Assessment Type | Assessment length / details | Proportion |
---|---|---|
Semester Assessment | 30 Hours Problem, Analysis, Design, Programming and Report: One larger piece of practical programming work with report. | 60% |
Semester Assessment | 4 Hours Weekly blackboard tests. Best 6/8 online multiple choice style tests. | 40% |
Supplementary Assessment | 30 Hours Problem, Analysis, Design, Programming and Report: One larger piece of practical programming work with report. | 60% |
Supplementary Exam | 1.5 Hours Blackboard test. Online multiple choice style exam. | 40% |
Learning Outcomes
On successful completion of this module students should be able to:
Write programs in C making use of dynamic data structures and file I/O
Write programs in C++ making use of classes and file I/O
Use tools to support development of stable and efficient software
Understand the typical traps and pitfalls associated with programs written in C and C++
Be able to describe which features of C or C++ would be suitable for use in typical programming scenarios.
Discuss the differences between programming in C and C++ and decide when a procedural or object-oriented approach is more appropriate
Brief description
The module starts by covering major features of the C programming language, a procedural programming language used for both high level and low level programming.
The module continues by covering major features of the C++ programming language, a language that adds object orientation as well as higher level constructs not available in C.
The manner in which the languages have, and are still evolving, will be considered at appropriate points.
The module will also consider interaction with facilities provided by external libraries and underlying operating systems (e.g. GUIs, memory management).
The module continues by covering major features of the C++ programming language, a language that adds object orientation as well as higher level constructs not available in C.
The manner in which the languages have, and are still evolving, will be considered at appropriate points.
The module will also consider interaction with facilities provided by external libraries and underlying operating systems (e.g. GUIs, memory management).
Content
1. Basic Concepts of C and C++.
2. The C Language: basic issues; software support tools; programming style and portability; arrays, pointers and functions; dynamic data structures; further features; case studies.
3. The C++ Language: basic issues; parameter passing; class definitions; inheritance; polymorphism; templates; STL; GUI libraries.
2. The C Language: basic issues; software support tools; programming style and portability; arrays, pointers and functions; dynamic data structures; further features; case studies.
3. The C++ Language: basic issues; parameter passing; class definitions; inheritance; polymorphism; templates; STL; GUI libraries.
Module Skills
Skills Type | Skills details |
---|---|
Application of Number | |
Communication | |
Improving own Learning and Performance | |
Information Technology | Intrinsic to the whole module |
Personal Development and Career planning | |
Problem solving | Programming in C and C++ and deciding which of the two languages is more appropriate for a given problem |
Research skills | |
Subject Specific Skills | Programming. |
Team work |
Notes
This module is at CQFW Level 5