CS201 : Introduction to Programming

Course Overview

Course Synopsis

The course uses the Dev-C++ Integrated Development Environment (IDE) as the vehicle for instruction. Starting with basic programming concepts, the course develops skill in handling decision and looping structures. Moving on through the concept of pointers and arrays, the course covers the essentials of the C programming language while staying away from object-oriented concepts. The premise is that a good grounding in structured programming will be required when moving into the object-oriented domain that would be covered in depth in a later course. After covering file-handling and unions and structures, the course will finally introduce the concept of classes and public and private members with an introduction to function overloading. The object-oriented concepts of polymorphism, virtual functions and protected data members will not be covered in this course. The course uses the C++ input/output system rather than the traditional C I/O. The practice sessions are kept away from "windows" type programming to ensure that mastering the basic concepts is not clouded by unnecessary details at this stage.

Course Learning Outcomes

At the end of the course, you should be able to:

  • Analyze, design, and solve real world problems in C ++
  • Understand the importance of modular program structure and reusability
  • Understand object oriented programming
  • Understand the difference between procedural and object oriented paradigms


Course Calendar

1 Introduction
2 Software Categories/ history of C/ IDE
3 Starting to 'C'
4 Expressions and Operators
5 Decisions
6 Repetition Structures
7 Loops and Operators
8 Switch Statement
Assignment 1
9 Functions
10 Function II
Assignment 2
11 Arrays
12 Arrays II
13 Arrays III
14 Pointers
GDB
15 Pointers, Strings and Arrays
16 Pointers and Arrays (Advance)
Quiz 1
17 String Manipulation Functions
18 File Handling
19 File Handling ( Continued)
20 Structures
21 Bit Manipulation
Quiz 2
22 Review Lecture
23 Pre-processor Directives and Macros
24 Dynamic Memory Allocation using C++
Mid Term Examination
25 Structured Programming
26 Classes and Objects
27 Classes And Objects (Contd.)
28 Memory Allocation in C++
29 Friend functions
30 Reference Data Type
31 Operator Overloading
Quiz 3
32 Operator Overloading (contd.)
33 Operator Overloading (contd.)
34 Arrays of Objects
35 Streams
36 Stream Manipulation
Quiz 4
37 Overloading Insertion and Extraction Operators
38 User Defined Manipulators
39 Copy Constructor
40 Classes and Objects (Advance)
41 Template Functions
42 Class Templates
43 Programming Exercise
44 Practical Example
45 Practical Example ( Continued )
Final Term Examination
46 Test Lesson for Menu Control
48 Test Lesson for CS201 - Video with Frames
49 Test Lesson - Video without frames
50 Embedded Quiz
51 Pre-Assessment