- Level Foundation
- Duration 8 hours
- Course by Dartmouth College
-
Offered by
About
In this course you will define your own data types in C, and use the newly created types to more efficiently store and process your data. Many programming languages provide a number of built-in data types to store things such as integers, decimals, and characters in variables, but what if you wanted to store more complex data? Defining your own data types in C allows you to more efficiently store and process data such as a customer's name, age and other relevant data, all in one single variable! You will also gain experience with programming concepts that are foundational to any programming language. Why learn C and not another programming language? Did you know that smartphones, your car’s navigation system, robots, drones, trains, and almost all electronic devices have some C-code running under the hood? C is used in any circumstance where speed and flexibility are important, such as in embedded systems or high-performance computing. At the end of this short course, you will reach the fifth milestone of the C Programming with Linux Specialization, unlocking the door to a career in computer engineering. Your job Outlook: - Programmers, developers, engineers, managers, and related industries within scientific computing and data science; - Embedded systems such as transportation, utility networks, and aerospace; - Robotics industry and manufacturing; - IoT (Internet of Things) used in smart homes, automation, and wearables. - IEEE, the world’s largest technical professional organization for the advancement of technology, ranks C as third of the top programming languages of 2021 in demand by employers. (Source: IEEE Spectrum) This course has received financial support from the Patrick & Lina Drahi Foundation.Modules
Let's get started
1
Videos
- Welcome
About this course
1
Assignment
- Are you ready to start?
6
Readings
- Course syllabus
- Two universities teamed up to offer a new Professional Certificate in C Programming with Linux
- The course team
- Collaborative MOOC
- Earn a Specialization from Dartmouth and IMT
- Get the most out of this course
We want to learn more about you
1
Discussions
- Introduce yourself
1
Readings
- Pre-course survey
Learn about the tools
1
External Tool
- Syntax highlighting in Codecast
3
Videos
- Get to work with Codecast
- Learn about Taskgrader
- How to navigate the third party tool?
2
Readings
- Learn how to use Codecast and Taskgrader
- Codecast Sandbox
Interacting on the discussion forum
1
Discussions
- Learn how to post code on the Coursera forum
1
Readings
- Learn how to post code on the Coursera forum
Technical, general, organisational and other questions
1
Discussions
- Technical, general, organisational and other questions
Define structures
1
External Tool
- Define and use structures
Access and modify structures
1
External Tool
- Access and modify structures
Pass structures to functions
1
External Tool
- Pass structures to functions
Work with structures
1
External Tool
- Work with structures
Reflect on your learning progress
1
Assignment
- Self-assess your learning in Structures
Create a structure to store the coordinates of a point
1
External Tool
- Create a structure to store the coordinates of a point
Allocate memory for structures
1
External Tool
- Allocate memory for structures
Get to know the concept of a linked list
1
External Tool
- Get to know the concept of a linked list
Reflect on your learning progress
1
Assignment
- Self-assess your learning in Structures and pointers
Creating a single node
1
External Tool
- Create a single node
Linking nodes
1
External Tool
- Link nodes
Printing a linked list
1
External Tool
- Print a linked list
Free an entire linked list
1
External Tool
- Free an entire linked list
Creating linked lists from user input
1
External Tool
- Create a linked list of digits from user input
Searching a linked list
1
External Tool
- Search a linked list
Sorting a linked list using Insertion Sort
1
External Tool
- Sort a linked list using Insertion Sort
Reflect on your learning progress
1
Assignment
- Self-assess your learning in Linked lists
Let's continue coding
1
Videos
- Closing MOOC 5 - C Programming: Advanced Data Types
1
Readings
- Congratulations
We value your feedback
1
Readings
- End of course survey
Auto Summary
Unlock the potential of your programming skills with "C Programming: Advanced Data Types - 5," a comprehensive course in the IT & Computer Science domain. Guided by Coursera, this course delves into the creation and utilization of custom data types in C, enabling you to efficiently handle complex data and streamline your coding processes. Throughout this 480-hour course, you'll explore how defining your own data types can consolidate various pieces of information, such as a customer's name and age, into a single variable, enhancing both storage and processing efficiency. This foundation in advanced data types is not only pivotal for mastering C but also offers transferable skills applicable to numerous programming languages. Why focus on C? C is the backbone of many modern technologies, from smartphones and car navigation systems to robotics and high-performance computing. Its speed and flexibility make it indispensable in embedded systems and scientific computing. By mastering C, you position yourself at the forefront of industries like transportation, utility networks, aerospace, robotics, IoT, and more. This course is the fifth milestone in the C Programming with Linux Specialization, paving the way for a promising career in computer engineering. The job outlook for C programmers is robust, with demand in various sectors including data science, embedded systems, automation, and smart technologies. IEEE Spectrum ranks C as the third most sought-after programming language by employers in 2021. Supported by the Patrick & Lina Drahi Foundation, this foundational level course is available through a Starter subscription on Coursera, making it an accessible choice for aspiring programmers, developers, engineers, and managers eager to enhance their technical prowess. Join us and take a significant step toward a dynamic and rewarding career in tech.

Rémi SHARROCK

Petra Bonfert-Taylor