1
Module 1: Introduction to C
Level 1 - Introduction to C. Build a strong foundation in programming, the C language, its history, features, applications, basic program structure, and compilation flow.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what programming is and why C matters
• Explain the history, features, and applications of C
• Read the structure of a basic C program and the compilation process
2
Module 2: Environment Setup
Level 1 - Introduction to C. Set up the C development environment with GCC, configure an IDE, and compile and run the first C program.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand the role of a compiler in C development
• Install GCC and set up a C IDE
• Write, compile, and execute the first C program
3
Module 3: Variables & Data Types
Level 2 - Basics of C. Learn how C stores values using variables, primitive data types, constants, modifiers, and type conversions.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Declare and use variables correctly in C
• Work with int, float, double, and char types
• Use constants, type modifiers, and type casting safely
4
Module 4: Operators
Level 2 - Basics of C. Use C operators to perform arithmetic, comparisons, logical checks, assignments, bitwise operations, and precedence-based expressions.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Recognize the main categories of C operators
• Apply arithmetic, relational, logical, assignment, and bitwise operators
• Evaluate expressions correctly using operator precedence
5
Module 5: Input & Output
Level 2 - Basics of C. Learn standard console input and output using printf, scanf, format specifiers, and escape sequences.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand basic input and output in C
• Use printf() and scanf() with the right format specifiers
• Write readable console output with escape sequences
6
Module 6: Conditional Statements
Level 3 - Control Flow. Control program execution using if, if-else, nested if statements, and switch-based decision making.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand decision making in C programs
• Implement branching with if, if-else, and nested if
• Use switch statements for multi-way selection
7
Module 7: Loops
Level 3 - Control Flow. Repeat logic efficiently using for, while, do-while, and loop control statements like break and continue.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand when and why loops are used
• Write for, while, and do-while loops
• Control loop execution with break and continue
8
Module 8: Pattern Programming
Level 3 - Control Flow. Strengthen logic-building skills by solving star and number pattern problems using nested loops.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand how pattern logic is built step by step
• Use nested loops to generate star and number patterns
• Improve loop-based problem solving in C
9
Module 9: Functions
Level 4 - Functions. Break programs into reusable units with declarations, definitions, parameters, return values, and recursion.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand the role of functions in modular programming
• Write function declarations and definitions with parameters
• Use return values and recursion effectively
10
Module 10: Storage Classes
Level 4 - Functions. Learn how C controls variable scope, lifetime, and linkage using storage classes.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what storage classes are in C
• Use auto, static, extern, and register appropriately
• Explain scope and lifetime differences across storage classes
11
Module 11: Arrays
Level 5 - Arrays & Strings. Store and process collections of values using one-dimensional and multi-dimensional arrays.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand how arrays store multiple values of the same type
• Work with one-dimensional and multi-dimensional arrays
• Perform common array operations in C
12
Module 12: Strings
Level 5 - Arrays & Strings. Work with character arrays as strings and perform string handling and manipulation tasks.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand how strings are represented in C
• Use common string handling functions
• Manipulate and process string data safely
13
Module 13: Pointers
Level 6 - Pointers. Learn the core pointer model in C using addresses, dereferencing, pointer arithmetic, and null pointers.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what pointers are and why they matter in C
• Use address and dereference operators correctly
• Work with pointer arithmetic and null pointers safely
14
Module 14: Pointers & Arrays
Level 6 - Pointers. Explore the close relationship between arrays and pointers and how arrays are passed to functions.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain the relationship between arrays and pointers in C
• Use pointer-style indexing and traversal
• Pass arrays to functions correctly
15
Module 15: Pointers & Functions
Level 6 - Pointers. Use pointers with functions for pass-by-reference style behavior, returning addresses, and basic function pointers.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Compare passing by value and reference-like behavior in C
• Return pointers carefully from functions
• Understand the basics of function pointers
16
Module 16: Structures
Level 7 - Structures & Unions. Group related data with structures and work with arrays of structures and nested structures.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand why structures are used in C
• Declare structures and access their members
• Work with arrays of structures and nested structures
17
Module 17: Unions
Level 7 - Structures & Unions. Learn how unions share memory and how they differ from structures.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what a union is in C
• Compare structures and unions clearly
• Explain memory usage differences between them
18
Module 18: Enumerations
Level 7 - Structures & Unions. Use enums to represent named integer constants and improve code readability.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what enum means in C
• Declare and use enumerations correctly
• Identify practical use cases for enums in programs
19
Module 19: File Handling
Level 8 - File Handling. Read and write files in C using standard library functions for text and binary data.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand why file handling is important in C
• Use fopen(), fclose(), fprintf(), fscanf(), fread(), and fwrite()
• Perform common file operations safely
20
Module 20: Dynamic Memory Allocation
Level 9 - Advanced C. Manage memory at runtime using malloc, calloc, realloc, and free.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what dynamic memory allocation is
• Allocate and resize memory with malloc(), calloc(), and realloc()
• Release heap memory correctly with free()
21
Module 21: Preprocessor Directives
Level 9 - Advanced C. Use the C preprocessor for file inclusion, macros, and conditional compilation.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand the role of the C preprocessor
• Use #include and #define correctly
• Write simple macros and conditional compilation blocks
22
Module 22: Command Line Arguments
Level 9 - Advanced C. Accept and process runtime input using argc and argv.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what command line arguments are in C
• Use argc and argv in main()
• Apply command line input in practical programs
23
Module 23: Debugging
Level 10 - Debugging & Practice. Learn how to identify, analyze, and fix common errors in C programs.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand what debugging means in real development
• Recognize common syntax, runtime, and logical errors
• Apply practical debugging techniques to C programs
24
Module 24: Problem Solving
Level 10 - Debugging & Practice. Strengthen core logic-building skills with algorithm basics, structured thinking, and practice problems.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Understand basic algorithmic thinking for C programming
• Translate logic into clear step-by-step code
• Improve confidence through focused practice problems