C PROGRAMMING: Introduction to C Programming

Introduction to C Programming: week-wise syllabus, notes, short notes, and available revision material.

Ctrl K
0 resources in this course · 12 syllabus weeks

Introduction to C Programming

Degree

Complete week-wise syllabus

C programming · 12 weeks

Week 1: Computing & programming introduction

Topics covered

  • Computing & programming introduction
    • Computer architecture
    • Memory
    • Loops and conditionals as concepts
    • How programs run

Expected skills: Explain the relationship between a program, memory and its execution.

Week 2: Data representation

Topics covered

  • Data representation
    • Number systems
    • Binary representation
    • Compilation
    • The role of the operating system

Expected skills: Work with basic number representations and describe how a C program is compiled.

Week 3: C basics

Topics covered

  • C basics
    • Program structure
    • Variables
    • Data types
    • Operators
    • Expressions

Expected skills: Write a small C program using variables, types and expressions.

Week 4: Control flow

Topics covered

  • Control flow
    • if and else
    • switch
    • for loops
    • while loops
    • do-while loops

Expected skills: Choose suitable branches and loops to control program execution.

Week 5: Functions

Topics covered

  • Functions
    • Function definitions
    • Parameters
    • Scope
    • Recursion

Expected skills: Break a program into functions and trace scope and recursive calls.

Week 6: Pointers

Topics covered

  • Pointers
    • Pointers and memory
    • Endianness
    • Alignment

Expected skills: Reason about memory addresses, pointer values and data layout.

Week 7: Arrays & strings

Topics covered

  • Arrays & strings
    • Arrays
    • Pointer arithmetic
    • C strings

Expected skills: Traverse arrays and work with strings through indices and pointers.

Week 8: Aggregate types

Topics covered

  • Aggregate types
    • struct
    • typedef
    • union
    • enum

Expected skills: Define aggregate data types and use type aliases and enumerations.

Week 9: Dynamic memory

Topics covered

  • Dynamic memory
    • malloc and free
    • Heap versus stack
    • Multidimensional arrays

Expected skills: Allocate and release dynamic memory and distinguish stack from heap storage.

Week 10: Files & bits

Topics covered

  • Files & bits
    • File input/output
    • Bit manipulation

Expected skills: Use file I/O and basic bit operations.

Week 11: Build & preprocessor

Topics covered

  • Build & preprocessor
    • Preprocessor
    • Macros
    • Multi-file projects

Expected skills: Organize a multi-file program and understand preprocessor directives.

Week 12: Review

Topics covered

  • Review
    • Revision of C programming topics

Expected skills: Consolidate concepts from program execution through memory, types, files and builds.

Quick revision map

C programming topic distribution

Weeks 1–3: Computing and C fundamentals

3 weeks

Architecture, representation, compilation, variables and expressions

Weeks 4–5: Control flow and functions

2 weeks

Branches, loops, scope, recursion

Weeks 6–9: Memory and data structures

4 weeks

Pointers, arrays, strings, aggregate types, dynamic allocation

Weeks 10–11: Files and builds

2 weeks

File I/O, bits, preprocessor, multi-file projects

Week 12: Revision

1 week

Review and practice