C/C

Course Title: Introduction to C/C Programming

Course Summary:

This course provides an in-depth introduction to the fundamentals of C and C programming languages. It is designed for beginners with little or no prior programming experience. The course covers key concepts, syntax, and programming techniques in both languages, enabling students to build a strong foundation in programming logic and problem-solving. Practical examples and hands-on exercises are incorporated to reinforce theoretical concepts, preparing students for real-world application.

Syllabus:

Week 1-2: Introduction to Programming and C

  • Overview of Programming and Software Development
  • Introduction to C and its History
  • Setting up Development Environment (IDEs, compilers)
  • Basic Structure of a C Program
  • Variables, Data Types, and Operators
  • Input and Output in C

Week 3-4: Control Flow in C

  • Decision Making: if, else, switch
  • Looping: while, for, do-while
  • Break and Continue Statements
  • Logical and Relational Operators

Week 5-6: Functions in C

  • Functions: Declaration, Definition, and Calling
  • Function Parameters and Return Values
  • Scope and Lifetime of Variables
  • Recursive Functions
  • Function Prototypes

Week 7-8: Arrays and Pointers in C

  • Introduction to Arrays
  • Working with One-Dimensional and Multi-Dimensional Arrays
  • Pointers and Address Manipulation
  • Dynamic Memory Allocation and Deallocation
  • Strings in C

Week 9-10: Introduction to C

  • Overview of C
  • Classes and Objects
  • Constructors and Destructors
  • Operator Overloading
  • Inheritance and Polymorphism

Week 11-12: Advanced C Concepts

  • Templates and Generic Programming
  • Exception Handling
  • File Handling in C
  • Standard Template Library (STL)
  • Best Practices and Coding Standards

Week 13: Final Project

  • Students will work on a small-scale project to apply the concepts learned throughout the course.
  • Project presentations and feedback.

Assessment:

  • Weekly quizzes
  • Programming assignments
  • Midterm examination
  • Final project and presentation

Grading:

  • Quizzes and Assignments: 40%
  • Midterm Examination: 20%
  • Final Project: 30%
  • Class Participation: 10%