CSC-101 Programming with C and C++

Autumn 2026-27


Instructor: Balasubramanian Raman
Office: S-227, CSE Building
Class Meeting Time: Mondays and Thursday (04:00-05:00 pm) and Fridays (05:00-06:00 pm).
Class Room: Abdul Kalam Block 406
Office Hours: Tuesdays, Wednesdays 11:00 a.m. - 1:00 p.m. and by appointment
TAs: Abhishek Pratap Singh (abhishek_s at cs), Shweta Sharma (shweta_s at cs), Udit (udit_d at cs), Om Patel (patel_or at cs) and Ravi Punani (punani_rh at cs)
Email: first four letters of first name at cs dot ac dot in

Announcements

August 10, 2026: Labs have begun.
July 27, 2026: Classes have begun.

Course Objectives, Learning Outcomes and Prerequisites

To understand the basic concepts of procedural and object-oriented programming.
To use object-oriented programming concepts to design and develop software applications.
To implement real-world entities like Inheritance, Data hiding, polymorphism, etc.

Prerequisites: NIL.

Evaluation Components


Lecture Notes

01. Introduction to Programming (27/07/2026)
02. Introduction to Computer Systems and Algorithms (30/07/2026)
03. Introduction to Flow Chart, Pseudo Code and Online Compilers (31/07/2026)
04. C Programming Structure and Introduction to Data Types (03/08/2026)
05. Type Casting and Operators (06/08/2026)
06. if Statements and more on Operators (07/08/2026)
07. More on Operators (08/08/2026)
08. More on Operators and switch-Case statement (10/08/2026)
09. Switch-Case statement and Loops (13/08/2026)
10. for loops, break, continue statements and Address Operator (14/08/2026)
11. Surprise Quiz 1 (17/08/2026)
12. One-Dimensional Arrays (20/08/2026)
13. More on One-Dimensional Arrays (21/08/2026)
14. One-Dimensional and Two Dimensional Arrays (31/08/2026)
15. More on Two Dimensional Arrays (03/09/2026)
16. Functions (07/09/2026)
17. Pass by Value and Pass by Reference, Arrays and Functions (17/09/2026)
18. MTE Answer Sheets distribution (21/09/2026)
19. MTE Solution discussion (23/09/2026)
20. Recursive Functions (24/09/2026)
21. Problem Solving Class (25/09/2026)
22. Iteration to Recursion and vice versa, Dereference Operators (28/09/2026)
23. Arrays and Pointers (01/10/2026)
24. Quiz 2 (05/10/2026)
25. Static & Dynamic Arrays and Void Pointers (07/10/2026, Extra Class)
26. Dynamic Arrays in 2-D, Function Pointers and Structures (08/10/2026)
27. Structures in C (12/10/2026)
28. Nested Structures, Unions in C, Introduction to C++ (15/10/2026)
29. Reference Operator in C++, Pointers in C++, Arrays and Pointers, Static and Dynamic Arrays (16/10/2026)
30. Two Dimaensional Dynamic Arrays, Charecter Arrays, Structures, Classes and Objects (21/10/2026)


Assignments


01. Assignment 1 (Posted on 10/08/2026, Deadline 24/08/2026)
02. Assignment 2 (Posted on 31/08/2026, Deadline 21/09/2026)
03. Assignment 3
04. Assignment 4


Examinations


1. Surprise Quiz 1 (17/08/2026)
2. MTE (/09/2026)
3. Surprise Quiz 2 (05/10/2026)
https://drive.google.com/file/d/1B8hk57pENB_PK4GwaKitwNTIq5rgDO9h/view?usp=sharing

Recommended Study Material

The following will be used as a reference/text book for this course:
1. C Programming Language, Kernighan Brian W. and Dennis M. Ritchie,, 2nd edition Pearson 2015.
2. C: The Complete Reference, Herbert Schildt, 4th Edition, McGraw Hill Education 2017.
3. Understanding Pointers in C, Yashavant Kanetkar, 2003.
4. Let Us C: Authentic guide to C programming language, Yashavant Kanetkar, 19th Edition 2022.
5. Exploring C, Yashavant Kanetkar, BPB Publisher 2004.
6. C++: The Complete Reference, Herbert Schildt, 4th Edition, McGraw Hill Education 2017.
7. Object Oriented Programming in C++, Robert Lafore, 4th Edition, 2001.