Introduction to Computers 
 
What Is Computer Programming? 
 
What Is an Operating System? 
 
How Are Programs Executed? 
 
Introduction to Flowcharts and Algorithms 
 
Illustrating Decision Making Using a Flowchart/Algorithm 
 
Creating a Flowchart or Algorithm for Iteration 
 
Module Wrap-Up: Introduction to Computing and Problem-Solving 
 
Essential Reading: Computers and Programs 
 
Essential Reading: Flowcharts and Algorithms 
 
Readings: Introduction to Computing and Problem-Solving 
 
Practice Quiz: Introduction to Computers 
 
Practice Quiz: What Is Computer Programming? 
 
Practice Quiz: What Is an Operating System? 
 
How Are Programs Executed? 
 
Practice Quiz: Introduction to Flowcharts and Algorithms 
 
Practice Quiz: Illustrating Decision Making Using a Flowchart/Algorithm 
 
Practice Quiz: Creating a Flowchart or Algorithm for Iteration 
 
Introduction to Computing and Problem-Solving 
 
Essential Elements of a C Program 
 
Executing a C Program Using Coursera Labs 
 
Using Basic Unix Commands in Coursera Labs 
 
Variables Constants and Datatypes in C 
 
Where and How Are Program Data Stored? 
 
Variable Types and Their Storage 
 
Operators and Expressions in C 
 
Arithmetic and Assignment Operators 
 
Operator Precedence and Associativity 
 
Unary Arithmetic Operators 
 
Relational and Logical Operators 
 
Module Wrap-Up: Introduction to C Programming 
 
Reading: Variables Constants and Datatypes 
 
Reading: Operators and Expressions 
 
Readings: Introduction to C Programming 
 
Practice Quiz: Essential Elements of a C Program 
 
Practice Quiz: Executing a C Program Using Coursera Labs 
 
Practice Quiz: Using Basic Unix Commands in Coursera Labs 
 
Practice Quiz: Variables Constants and Datatypes in C 
 
Practice Quiz: Where and How Are Program Data Stored? 
 
Practice Quiz: Variable Types and Their Storage 
 
Practice Quiz: Character Types in C 
 
Practice Quiz: Type Conversions in C 
 
Practice Quiz: Operators and Expressions in C 
 
Practice Quiz: Arithmetic and Assignment Operators 
 
Practice Quiz: Operator Precedence and Associativity 
 
Practice Quiz: Unary Arithmetic Operators 
 
Practice Quiz: Relational and Logical Operators 
 
Practice Quiz: Operators Example 
 
Introduction to C Programming 
 
Statements and Blocks in C 
 
The If-Else Statement in C 
 
Nested If-Else Statements 
 
Break and Continue Statements with Examples 
 
Module Wrap-Up: Branching and Looping 
 
Reading: Conditional Statements in C 
 
Reading: Loops and While Loop  
 
Readings: Branching and Looping 
 
Practice Quiz: Statements and Blocks in C 
 
Practice Quiz: The If Statement in C 
 
Practice Quiz: The If-Else Statement in C 
 
Practice Quiz: Nested If-Else Statements 
 
Practice Quiz: Switch Statement in C 
 
Practice Quiz: Loops in C 
 
Practice Quiz: While Loop in C 
 
Practice Quiz: While Loop Example 1 
 
Practice Quiz: While Loop Example 2 
 
Practice Quiz: Break and Continue Statements with Examples 
 
Practice Quiz: Writing a For Loop in C 
 
Practice Quiz: For Loop Example 1 
 
Practice Quiz: For Loop Example 2 
 
Practice Quiz: While vs. For Loop 
 
C Programming Practice Lab1 
 
C Programming Practice Lab2 
 
C Programming Practice Lab3 
 
Role and Need of Functions 
 
Declaration and Definition of a Function 
 
Function Invocation and Flow of Program Execution 
 
Pros and Cons of Functions 
 
Memory Snapshot During Function Execution 
 
Scope and Storage Class of a Variable 
 
Memory Layout of a C Program 
 
Auto and Global Variables 
 
Module Wrap-Up: Functions 
 
Lab Preread: Multi-File Execution in C 
 
Pros and Cons of Functions in C  
 
Scope Rules and Memory Layout of a C Program 
 
Storage Classes of Variables in C  
 
Practice Quiz: Role and Needs of Functions 
 
Practice Quiz: Declaration and Definition of a Function 
 
Practice Quiz: Function Invocation and Flow of Program Execution 
 
Practice Quiz: Pros and Cons of Functions 
 
Practice Quiz: Memory Snapshot During Function Execution 
 
Practice Quiz: Functions: Example 1 
 
Practice Quiz: Functions: Example 2 
 
Practice Quiz : Scope and Storage Class of a Variable 
 
Practice Quiz: Memory Layout of a C Program 
 
Practice Quiz: Auto and Global Variables 
 
Practice Quiz: Static Variables 
 
C Programming Practice Lab 1 
 
C Programming Practice Lab 2 
 
C Programming Practice Lab 3 
 
C Programming Practice Lab 4 
 
Arrays and Their Importance 
 
Defining and Accessing Arrays 
 
Reading: Arrays in a C Program 
 
Reading: Search and Sorting 
 
Reading: Character Arrays 
 
Practice Quiz: Arrays and Their Importance 
 
Practice Quiz: Defining and Accessing Arrays 
 
Practice Quiz: Arrays in Memory 
 
Practice Quiz: Arrays Examples: Part 1 
 
Practice Quiz: Arrays Examples: Part 2 
 
Practice Quiz: Arrays and Functions 
 
Practice Quiz: Linear Search 
 
Practice Quiz: Selection Sort: Part 1 
 
Practice Quiz: Selection Sort: Part 2 
 
Practice Quiz: Character Arrays 
 
Course Completion Acknowledgement 
 
Practice Lab 1: Arrays in a C Program 
 
Practice Lab 2: Search and Sorting 
 
Practice Lab 3: Character Arrays