University of Central Punjab: Program (S) To Be Evaluated A. Course Description Bsse
University of Central Punjab: Program (S) To Be Evaluated A. Course Description Bsse
PROGRAM (S) TO BE
BSSE
EVALUATED
A. Course Description
1
LECTURES Lecture Topics Instruments
• Introduction & Review
o Introduction about the course and administrative
o Following Review to be completed in first 4-weeks as
and when required
1
o (Fundamentals of C++,Concept of TYPE, Identifier,
Declaration, Initialization, Expression, Assignment,
Selection, Loop, Arrays)
• Array
o Integer, Character, C-String
2
o Declaration, Initialization, Input, Output.
• Functions
o Need and importance of functions
o Predefine functions, user define functions
5
o Value returning function, void function
o Function Prototypes
o Function Definition
o Function Calling
• Functions
o Need and importance of functions
o Predefine functions, user define functions
o Value returning function, void function
6
o Function Prototypes Paper Quiz 1
o Function Definition Graded Lab 1
o Function Calling
o Formal parameter, Actual parameter
o Value parameter, Reference parameter
2
o Problem solving involving filing, function and
array/CString.
• POINTERS
o Reason for introducing pointers.
o Pointer declarations and initialization.
o Explaining the difference between pointer declaration
and ordinary variable declarations.
9
o Taking address of (&) a variable.
o Dereferencing a pointer.
o Different types of constants involving pointers.
o Problem solving involving pointers.
• POINTER HAZARDS
o Explaining Memory Leak
o Explaining Dangling Pointer
14
o Problem Solving involving pointers, 1D arrays and
functions
3
16
• Revision before Midterm.
Mid Term
• Discuss Deep Copy and Shallow copy
o Discuss issues with shallow copy.
o Discuss the use of deep copy.
• Auto-Growing of 1D arrays
17
o Need for auto-growing arrays.
o Technique for growing 1D arrays automatically.
o Problem solving involving auto-growing 1D arrays.
• Auto-Growing of 1D arrays
o Need for auto-growing arrays.
18 o Technique for growing 1D arrays automatically. Assignment 4
o Problem solving involving auto-growing 1D arrays.
• 2D ARRAYS
o Concept of 2D array as array of arrays.
o Declaring and initializing 2D arrays.
19
o Memory model of 2D array.
o Accessing individual elements in 2D array.
• 2D ARRAYS
o Concept of 2D array as array of arrays.
o Declaring and initializing 2D arrays.
o Memory model of 2D array.
Paper Quiz 4
o Accessing individual elements in 2D array.
20 Graded Lab 4
o Traversing 2D array (row-wise, column-wise,
diagonally)
o Handling 2D arrays using 1D array functions.
o Problem solving involving 2D arrays.
• Double Pointer
o Need of double pointer.
o Declaration of double pointer.
23 o Difference between single and double pointers.
o Problem solving involving double pointers to solidify the
concept of double pointer.
4
o Dynamic Memory allocation involving double pointer.
o Creating 2D array dynamically using double pointer.
o Explaining benefits of creating 2D arrays dynamically.
o Problem solving involving dynamically allocated 2D
arrays and functions.
• Auto-Growing of 2D arrays
o Need for auto-growing arrays (Column wise).
Paper Quiz 6
o Technique for growing 2D arrays automatically
29 Graded Lab 6
(Column wise).
o Problem solving involving auto-growing 2D arrays.
• Auto-Growing of 2D arrays
o Need for auto-growing arrays (Row wise).
o Technique for growing 2D arrays automatically (Row
30
wise).
o Problem solving involving auto-growing 2D arrays
31 • Problem Solving
32 • Problem Solving