The final course in the specialization Introduction to Programming in C will teach you powerful new programming techniques for interacting with the user and the system and dynamically allocating memory. You will learn more sophisticated uses for pointers, such as strings and multidimensional arrays, as well as how to write programs that read and write files and take input from the user. Learning about dynamic memory allocation will allow your programs to perform complex tasks that will be applied in the final part of the specialization project: a Monte Carlo simulation for calculating poker hand probabilities. *****Note: Due to a recent spike in enrollments for the Introduction to Programming in C Specialization, we are currently having technical difficulties with programming environment for this course, which prevents some learners from completing the course's programming assignments. Until this matter is resolved, we recommend you choose to audit (https://learner.coursera.help/hc/en-us/articles/209818613-Enrollment-options) this course and study the video lessons until this matter is resolved. We will email all learners when this matter is resolved. We apologize for this inconvenience and are working diligently to remedy the problem. Please note that this does not impact the first course of this Specialization, Programming Fundamentals.