About this Course

94,937 recent views
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Flexible deadlines
Reset deadlines in accordance to your schedule.
Beginner Level
Approx. 15 hours to complete
English
Shareable Certificate
Earn a Certificate upon completion
100% online
Start instantly and learn at your own schedule.
Flexible deadlines
Reset deadlines in accordance to your schedule.
Beginner Level
Approx. 15 hours to complete
English

Offered by

Placeholder

Duke University

Syllabus - What you will learn from this course

Content RatingThumbs Up96%(2,447 ratings)Info
Week
1

Week 1

4 hours to complete

Pointers

4 hours to complete
5 videos (Total 16 min), 16 readings, 3 quizzes
5 videos
Naive Swap2m
Pointers2m
Corrected Swap2m
Swap with Hardware6m
16 readings
****Current Technical Problems with Course Programming Environment****
Pointer Basics10m
Pictures10m
Swap Revisited10m
The Practice Programming Environment10m
Assignment 11_read_ptr110m
Pointers under the Hood10m
A Program's View of Memory10m
NULL10m
Pointers to Structs10m
Pointers to Pointers10m
const10m
Aliasing10m
Pointer Arithmetic10m
Use Memory Checker Tools10m
Assignment 12_read_ptr210m
3 practice exercises
Pointers Conceptually30m
Pointers in Hardware30m
Pointers to Sophisticated Types30m
Week
2

Week 2

2 hours to complete

Arrays

2 hours to complete
5 videos (Total 18 min), 9 readings, 1 quiz
5 videos
Array Access with Pointer Indexing1m
Index of Largest Element6m
Closest Point Step-Through3m
Dangling Pointers3m
9 readings
Cryptography Motivation10m
Array Declaration and Initialization10m
Accessing an Array10m
Passing Arrays as Parameters10m
Writing Code with Arrays10m
Assignment 13_read_arr110m
Dangling Pointers10m
Array Size10m
Assignments 14_array_max, 15_tests_subseq, 16_subseq10m
1 practice exercise
Array Basics30m
Week
3

Week 3

4 hours to complete

Uses of Pointers

4 hours to complete
4 videos (Total 22 min), 18 readings, 2 quizzes
4 videos
Copy a String4m
Incompatible Representations5m
Buffer Overflow4m
18 readings
String Literals10m
Mutable Strings10m
String Equality10m
String Copying10m
Converting Strings to ints10m
Standard Library Functions10m
Assignments 17_read_arr2 and 18_reverse_str10m
Introduction10m
Declaration10m
Indexing10m
Initializing10m
Array of Pointers10m
Incompatibility10m
Array of Strings10m
Assignments 19_bits_arr and 20_rot_matrix10m
Function Pointer Basics10m
Sorting Functions10m
Format String Attacks10m
2 practice exercises
Function Pointers30m
Security Hazards30m
Week
4

Week 4

3 hours to complete

Recursion

3 hours to complete
9 videos (Total 34 min), 10 readings, 1 quiz
9 videos
Writing Factorial Recursively6m
Translating Recursive Factorial to Code1m
Writing Fibonacci Recursively6m
Translate Recursive Fibonacci to Code4m
Duplication of Computation in Fibonacci1m
Execution of the Tail Recursive Implementation of Factorial4m
Execution of Mutually Recursive isOdd and isEven1m
Advice from a Duke Software Engineering Alum: Solve Real-World Problems5m
10 readings
Introduction to Recursion2m
Reading Recursive Code10m
Principles of Writing Recursive Code10m
Is Recursion Slow?10m
Assignment 21_read_rec110m
Tail Recursion10m
Equivalence of Tail Recursion and Iteration10m
Mutual Recursion10m
Assignments 22_tests_power and 23_power_rec10m
(Optional) Recursion Theory10m
1 practice exercise
Reading Recursion30m

Reviews

TOP REVIEWS FROM POINTERS, ARRAYS, AND RECURSION

View all reviews

About the Introduction to Programming in C Specialization

Introduction to Programming in C

Frequently Asked Questions

More questions? Visit the Learner Help Center.