Course Overview
This syllabus outlines the topics covered in the C and C++ programming course.
Week 1: Introduction to C Programming
- History of C
- Structure of a C program
- Basic syntax and data types
- Input and output functions
Week 2: Control Structures in C
- Conditional statements (if, else if, else)
- Looping structures (while, for, do-while)
- Switch case statements
- Break and continue statements
Week 3: Functions and Modular Programming in C
- Function declaration and definition
- Function arguments and return values
- Function prototypes
- Recursive functions
Week 4: Arrays and Pointers in C
- Array declaration and initialization
- Working with arrays
- Pointers and pointer arithmetic
- Dynamic memory allocation
Week 5: Structures and Unions in C
- Defining and using structures
- Nested structures
- Unions and their applications
- Memory alignment and padding
Week 6: File Input/Output in C
- File handling in C
- Reading and writing text files
- Binary file operations
- Error handling
Week 7: Introduction to C++
- History and features of C++
- Syntax and structure of a C++ program
- Input and output in C++
Week 8: Object-Oriented Programming in C++
- Classes and objects
- Constructors and destructors
- Member functions and data members
- Encapsulation and access specifiers
Week 9: Inheritance and Polymorphism in C++
- Inheritance and types (single, multiple, hierarchical)
- Function overloading and overriding
- Virtual functions and abstract classes
- Polymorphism and dynamic binding
Week 10: Templates and Standard Template Library (STL)
- Template classes and functions
- Generic programming
- STL containers (vectors, lists, maps, etc.)
- Algorithms and iterators in STL
Week 11: Exception Handling in C++
- Exception handling mechanism
- try, catch, throw, and noexcept
- Standard exceptions and custom exceptions
- Exception safety
Week 12: C and C++ Best Practices
- Coding standards and guidelines
- Debugging and profiling tools
- Memory management and optimization
- Performance tuning
Week 13: C and C++ Projects
- Final project work
- Code review and documentation
- Presentation and discussion
- Assessment:
Weekly quizzes
- Programming assignments
- Midterm examination
- Final project and presentation