Fundamentals of Programming
Course Code: CST-1222 | Second Semester
Duration
15 Weeks
Lectures
3 per week × 1 hour
Language
C++
Textbook
📚
Required Textbook
Starting Out With C++: From Control Structures Through Objects, 8th Edition
Tony Gaddis
Course Description
This course introduces students to programming through the C++ language, focusing primarily on core programming fundamentals. Students begin with C++ syntax, variables, data types, expressions, control structures, functions, arrays, and pointers. The course also provides a brief introduction to object‑oriented programming, covering essential concepts such as classes, objects, and basic access specifiers. Additional topics include structures, file handling, and practical exercises that strengthen logical thinking and problem‑solving skills. By the end of the course, students will be able to design, write, and debug structured C++ programs with introductory exposure to OOP principles.
Learning Objectives
- Introduce students to the C++ programming language, its syntax, and development environment setup.
- Develop understanding of expressions, type conversions, and formatted output.
- Build competency in control structures including conditionals, loops, and logical operators.
- Introduce functions, parameter passing, reference variables, and return values.
- Develop skills in working with arrays, pointers, and dynamic memory allocation.
- Introduce object-oriented programming concepts: classes, objects, access specifiers, and member functions.
- Cover structures, nested structures, enumerations, and file handling in C++.
Learning Outcomes
- Write, compile, and run basic to intermediate C++ programs in a development environment.
- Apply control structures and functions to solve structured programming problems.
- Use arrays and pointers effectively including dynamic memory management.
- Design and implement classes and objects following object-oriented programming principles.
- Work with structures, file I/O, and C-strings in C++ programs.
- Demonstrate critical thinking through hands-on exercises and quizzes.
Major Topics Covered
C++ Basics
Expressions & I/O
Control Structures
Functions
Arrays
Pointers
Strings & Characters
OOP – Classes & Objects
Structures
File Handling
Assessment Components
30%
Hands-on Exercise
30%
Quiz & Critical Thinking
40%
Final Exam
Lecture Structure: 3 lectures per week, each up to 60 minutes. The course runs for 15 weeks.
Hands-on exercises and quizzes accompany each topic to reinforce critical thinking.
A tutorial is held at the end of the file handling week. Late submissions are not accepted.
Course Outline
| Week | Topic |
|---|---|
| Part I C++ Fundamentals | |
| Week 01 |
Introduction to C++
|
| Week 02 |
Expression and Interactivity
|
| Part II Control Structures & Functions | |
| Week 03 |
Control Structures — Conditionals
|
| Week 04 |
Control Structures — Loops
|
| Week 05 |
Functions
|
| 📋 Assignment | |
| Part III Arrays & Pointers | |
| Week 06 |
Arrays
|
| Week 07 |
Pointers — Basics
|
| Week 08 |
Pointers — Advanced
|
| Part IV Strings, Characters & OOP | |
| Week 09 |
Characters, C-Strings, and the String Class
|
| Week 10 |
Introduction to Object-Oriented Programming
|
| Part V Structures & File Handling | |
| Week 11 |
Structures — Basics
|
| Week 12 |
Structures — Advanced
|
| Week 13 |
Files
|
| 📋 Tutorial | ⚙️ Hands-on Exercise & Quiz (Critical Thinking) | |
| Part VI Practice & Projects | |
| Week 14 | Practical Exercises & Quiz |
| Week 15 | Group Project & Presentation |
| 🎓 Final Exam | |
