Institut Mines-Télécom
C Programming with Linux Specialization
Institut Mines-Télécom

C Programming with Linux Specialization

Gain skills in computer engineering - C and Linux. Become a skilled C programmer and start a career in computer engineering.

Rémi SHARROCK
Petra Bonfert-Taylor

Instructors: Rémi SHARROCK

11,028 already enrolled

Included with Coursera Plus

Get in-depth knowledge of a subject
4.6

(336 reviews)

Beginner level

Recommended experience

2 months
at 10 hours a week
Flexible schedule
Learn at your own pace
Get in-depth knowledge of a subject
4.6

(336 reviews)

Beginner level

Recommended experience

2 months
at 10 hours a week
Flexible schedule
Learn at your own pace

What you'll learn

  • Develop and debug code in the C programming language

  • Discover the foundations of computer programming and Linux, the command line, manage processes, files and memory, compile C code with Linux

  • Interpret, analyze, and implement important computer algorithms

  • Observe, manipulate, and optimize computer memory using pointers in the C programming language

Details to know

Shareable certificate

Add to your LinkedIn profile

Taught in English

See how employees at top companies are mastering in-demand skills

 logos of Petrobras, TATA, Danone, Capgemini, P&G and L'Oreal

Advance your subject-matter expertise

  • Learn in-demand skills from university and industry experts
  • Master a subject or tool with hands-on projects
  • Develop a deep understanding of key concepts
  • Earn a career certificate from Institut Mines-Télécom
Coursera Career Certificate

Earn a career certificate

Add this credential to your LinkedIn profile, resume, or CV

Share it on social media and in your performance review

Coursera Career Certificate

Specialization - 7 course series

C Programming: Getting Started - 1

Course 111 hours4.6 (247 ratings)

What you'll learn

  • Define, distinguish and give examples of hardware/software, computer programs/algorithms

  • Explain the concept of a variable and declare, initialize and modify variables of data types int, double and char

  • Create and comment simple C-programs that may print text, special characters and variables to the screen with controlled formatting

  • Create simple C-programs that utilize for-loops to repeat blocks of instructions

Skills you'll gain

Category: Command-Line Interface
Category: Computer Programming
Category: Linux

C Programming: Language Foundations - 2

Course 213 hours4.7 (93 ratings)

What you'll learn

  • Use logical conditions to control the flow of a program via branch statements (if-else), repetition (for/while loop) and nesting of these structures

  • Create and modify arrays to store integer and floating point numbers and explain how arrays are organized in memory

  • Create null-terminated arrays of characters to store and modify strings (of characters)

  • Sort and search arrays of numbers and characters using bubble sort, selection sort, linear search and bisection

Skills you'll gain

Category: Computer Programming
Category: Linux
Category: C Programming

What you'll learn

  • Break acomplex programming task into a number of functions to which you pass arguments

  • Recall how computer memory is organized to store variables and arrays

  • Find the address of a variable

  • Perform simple pointer arithmetic

Skills you'll gain

Category: Computer Programming
Category: C Programming
Category: computer programs/algorithms

C Programming: Pointers and Memory Management - 4

Course 47 hours4.7 (54 ratings)

What you'll learn

  • Visualize the concept of a pointer and use it to pass variables to functions by reference in order to modify them via the function

  • Apply pointer arithmetic in order to address elements of both one-dimensional and multi-dimensional arrays

  • Use arrays of strings to store lists of strings in one array variable

  • Control memory usage by dynamically allocating and freeing memory at runtime

Skills you'll gain

Category: Computer Programming
Category: C Programming

C Programming: Advanced Data Types - 5

Course 57 hours4.4 (55 ratings)

What you'll learn

  • Define new data types (structures) to store multiple data items in one variable and create, initialize and modify variables of these new types

  • Find and explain the memory usage of a structure and use pointers to structures

  • Create linked lists of structures with dynamic memory allocation at runtime

  • Sort or search lined lists of structures

Skills you'll gain

Category: Computer Programming
Category: C Programming

Linux Basics: The Command Line Interface - 6

Course 67 hours4.6 (30 ratings)

What you'll learn

  • Use basic commands to control the Linux Operating System

  • Navigate and manipulate the Linux Filesystem using the command line interface

  • Manage the memory and processes running on Linux.

  • Compile and execute a C program in Linux

Skills you'll gain

Category: Computer Programming
Category: C Programming

C Programming: Using Linux Tools and Libraries - 7

Course 79 hours4.7 (27 ratings)

What you'll learn

  • Use external libraries

  • Build an application from multiple source files

  • Automate the building process using makefiles

  • Pass and use arguments to the main function. Read from and write to files in C

Skills you'll gain

Category: Computer Programming
Category: C Programming

Instructors

Rémi SHARROCK
Institut Mines-Télécom
7 Courses25,715 learners
Petra Bonfert-Taylor
Dartmouth College
7 Courses25,715 learners

Offered by

Industry partners

Partner 1

Prepare for a degree

Taking this Specialization by Institut Mines-Télécom may provide you with a preview of the topics, materials and instructors in a related degree program which can help you decide if the topic or university is right for you.

Why people choose Coursera for their career

Felipe M.
Learner since 2018
"To be able to take courses at my own pace and rhythm has been an amazing experience. I can learn whenever it fits my schedule and mood."
Jennifer J.
Learner since 2020
"I directly applied the concepts and skills I learned from my courses to an exciting new project at work."
Larry W.
Learner since 2021
"When I need courses on topics that my university doesn't offer, Coursera is one of the best places to go."
Chaitanya A.
"Learning isn't just about being better at your job: it's so much more than that. Coursera allows me to learn without limits."

New to Software Development? Start here.

Coursera Plus

Open new doors with Coursera Plus

Unlimited access to 10,000+ world-class courses, hands-on projects, and job-ready certificate programs - all included in your subscription

Advance your career with an online degree

Earn a degree from world-class universities - 100% online

Join over 3,400 global companies that choose Coursera for Business

Upskill your employees to excel in the digital economy

Frequently asked questions