Start your free trial now, and begin learning software, business and creative skills—anytime, anywhere—with video instruction from recognized industry experts.

Start Your Free Trial Now

C Essential Training

with Isac Artzi

Video: Welcome

A complete reference to learning C, from variables to functions and loops, including an exploration of the C Standard Library.
Expand all | Collapse all
  1. 9m 21s
    1. Welcome
      1m 5s
    2. What you should know before watching this course
      1m 3s
    3. Using the exercise files
      2m 34s
    4. The development environment used in this course
      4m 39s
  2. 12m 34s
    1. Overview of the C language and the C11 standard
      4m 47s
    2. Understanding C programming fundamentals
      4m 2s
    3. Running your first C program
      3m 45s
  3. 20m 33s
    1. Introducing preprocessor commands
      4m 6s
    2. Making code more manageable
      4m 11s
    3. Setting values to use later
      4m 15s
    4. Using statements and expressions
      3m 0s
    5. Adding comments to code for clarity
      5m 1s
  4. 16m 32s
    1. Understanding data types
      1m 28s
    2. Declaring and using integer types
      3m 40s
    3. Declaring and using floating-point types
      5m 8s
    4. Using the void data type
      2m 15s
    5. Declaring and using Boolean types
      4m 1s
  5. 14m 53s
    1. Understanding strings
      3m 24s
    2. Using screen-based input and output
      6m 2s
    3. Manipulating strings
      5m 27s
  6. 18m 2s
    1. Choosing appropriate variable names
      5m 39s
    2. Deciding when and where to declare variables
      5m 17s
    3. Implementing simple assignment statements
      7m 6s
  7. 52m 49s
    1. Understanding the use of arithmetic operators
      6m 38s
    2. Understanding the use of relational operators
      8m 13s
    3. Making decisions using logical operators
      5m 19s
    4. Performing bit-level calculations with bitwise operations
      6m 35s
    5. Using assignment operators in complex statements
      8m 19s
    6. Implementing mathematical expressions
      7m 13s
    7. Understanding the relationship between statements and expressions
      3m 16s
    8. Challenge: Convert centimeters to feet and inches
      1m 10s
    9. Solution: Convert centimeters to feet and inches
      3m 4s
    10. Challenge: Convert temperatures
      1m 14s
    11. Solution: Convert temperatures
      1m 48s
  8. 34m 42s
    1. Understanding functional programming
      5m 25s
    2. Passing variables to functions
      7m 12s
    3. Returning data from functions
      7m 27s
    4. Working with recursion
      7m 26s
    5. Challenge: Implement an external library
      1m 9s
    6. Solution: Implement an external library
      1m 59s
    7. Challenge: Print a range of numbers
    8. Solution: Print a range of numbers
      3m 11s
  9. 20m 1s
    1. Using if statements to change program flow
      3m 27s
    2. Using if-else statements to make decisions
      2m 54s
    3. Building alternative decision blocks with if-else-if statements
      4m 48s
    4. Building complex decision statements with switch statements
      4m 23s
    5. Challenge: Build a decision-making program
      1m 32s
    6. Solution: Build a decision-making program
      2m 57s
  10. 29m 44s
    1. Executing statements repeatedly with loops
      5m 6s
    2. Using for loops
      3m 32s
    3. Using while loops
      5m 50s
    4. Understanding the do-while loop
      5m 22s
    5. Breaking out of loops
      5m 35s
    6. Challenge: Make a bar chart
      1m 10s
    7. Solution: Make a bar chart
      3m 9s
  11. 45m 45s
    1. Introducing arrays
      3m 23s
    2. Declaring arrays
      4m 23s
    3. Initializing arrays
      3m 7s
    4. Accessing individual elements of an array
      9m 10s
    5. Understanding two-dimensional arrays
      5m 43s
    6. Rules for using an array
      3m 57s
    7. Using loops for searching and sorting
      8m 52s
    8. Challenge: Improve the bar chart
      3m 17s
    9. Solution: Improve the bar chart
      3m 53s
  12. 23m 52s
    1. Understanding pointers
      1m 56s
    2. Declaring and initializing a pointer variable
      2m 37s
    3. Using a pointer variable
      4m 29s
    4. Performing pointer arithmetic
      4m 46s
    5. Understanding the relationship between pointers and arrays
      4m 32s
    6. Managing memory using allocation and release
      5m 32s
  13. 17m 26s
    1. Understanding structures
      1m 53s
    2. Declaring and accessing structures
      4m 41s
    3. Using structures as complex variables
      6m 32s
    4. Understanding and performing union operations
      4m 20s
  14. 19m 19s
    1. Data management using sequential files
      7m 0s
    2. Data management using random access files
      7m 55s
    3. Exploring file access modes
      4m 24s
  15. 44m 28s
    1. Building user-defined functions
      2m 46s
    2. Introducing functional programming
      4m 38s
    3. Understanding the components of a function
      7m 14s
    4. Using local and global variables: The variable scope
      5m 39s
    5. Passing variables to functions
      5m 23s
    6. Passing an array to a function
      3m 31s
    7. Returning data from functions
      5m 16s
    8. Defining a prototype of a function
      3m 3s
    9. Using recursive functions
      6m 58s
  16. 16m 25s
    1. Defining and using macros
      6m 10s
    2. Inserting headers from other files
      4m 52s
    3. Using conditional directives
      5m 23s
  17. 33m 23s
    1. Defining and using meaningful naming conventions
      7m 16s
    2. Testing code correctness
      8m 35s
    3. Implementing debugging techniques
      7m 46s
    4. Striving for simplicity and clarity
      3m 57s
    5. Developing portable code
      5m 49s
  18. 9m 41s
    1. Challenge: Build a loan calculator
      2m 35s
    2. Solution: Build a loan calculator
      2m 49s
    3. Challenge: Convert compass bearing to direction
      1m 16s
    4. Solution: Convert compass bearing to direction
      3m 1s
  19. 3m 0s
    1. Goodbye
      3m 0s

please wait ...
C Essential Training
Video Duration: 0s 7h 22m Beginner


View Course Description

Widely used for both systems and application development, C is a powerful language at the heart of many more modern languages, like JavaScript and Objective-C. In this course, professor Isac Artzi dissects the anatomy of C, from data types, strings, and variables to simple functions. He'll show how these basic elements fit together in control structures like loops and if-else statements—where the real logic behind your code comes into play. Plus, learn how C organizes information into arrays and how you can manage memory resources with pointers.

C is a great first step for new programmers, and a way to broaden and deepen your knowledge if you've already programmed for a while. Press Play to start learning.

Topics include:
  • Reviewing the C language and the C11 standard
  • Understanding the development cycle
  • Setting values
  • Writing statements and expressions
  • Adding comments to code for clarity
  • Declaring data types
  • Manipulating strings
  • Declaring variables
  • Using operators and expressions
  • Working with functions
  • Controlling flow with if-else statements and loops
  • Initializing arrays
  • Working with files
  • Including files and executing macros with the C preprocessor
  • Understanding best coding practices


Hi, I'm Isac Artzi and welcome to C Essential Training. C is a very powerful functional programming language that's widely used and that has influenced many other languages. Most of the programming languages popular today are either direct descendants of C or are heavily influenced by C. In this course, I'll show you the basics of a C program and then, we'll dive into the details of data types, strings, and variables. Then, I'll show you how these basic ideas fit together with control structures like loops and if statements. After that, we'll take a look at how C organizes information in arrays and how it manages memory using pointers. Throughout the course, I will emphasize good, functional programming practices. Learning C is a great first step if you're a new programmer and a very good way to broaden your knowledge if you've already been programming for awhile. So let's get started with C Essential Training.

Find answers to the most frequently asked questions about C Essential Training .

Expand all | Collapse all
please wait ...
Q: How do I configure a C compiler in Windows?
To configure a C compiler for Eclipse in Windows, follow these steps:
2) Open the resulting mingw-get-setup.exe file and click Continue until you get to the Installation Manager.
3) Select mingw32-base and choose Mark for Installation.
4) Under the Installation menu, choose Apply Changes and then Apply. Wait for the process to complete.
5) Open Eclipse and navigate to the Preferences option under the Window menu.
6) Under C/C++, find the New C/C++ Project Wizard option. For the Hello World ANSI C Project option, choose the MinGW GCC toolchain, and click Make toolchain(s) preferred. Press OK.
7) To create a new project, select the File menu and choose New C Project.
8) In the Project Type area, choose Hello World ANSI C Project, and specify a project name. Press Finish. This will create a .c file inside a folder named “src.”
9) Open the exercise file and copy and paste the contents into the .c file created inside of your project, replacing the contents.
Q: How do I use the exercise files on a Windows machine?
A: On Windows, the exercise files require a change to the compiler settings to enable C99 support. To change the compiler settings, follow these steps:

    1)    Right-click on the .c file and choose Properties.
    2)    Under C/C++ Build and Settings, change the Command value to 
“gcc -std=c99”. Click OK.





Don't show this message again
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.

Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ .

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

* Estimated file size

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.

Mark all as unwatched Cancel


You have completed C Essential Training.

Return to your organization's learning portal to continue training, or close this page.


Upgrade to View Courses Offline


With our new Desktop App, Annual Premium Members can download courses for Internet-free viewing.

Upgrade Now

After upgrading, download Desktop App Here.

Become a Member and Create Custom Playlists

Join today and get unlimited access to the entire library of online learning video courses—and create as many playlists as you like.

Get started

Already a member?

Log in

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

You started this assessment previously and didn’t complete it.

You can pick up where you left off, or start over.

Resume Start over

Learn more, save more. Upgrade today!

Get our Annual Premium Membership at our best savings yet.

Upgrade to our Annual Premium Membership today and get even more value from your subscription:

“In a way, I feel like you are rooting for me. Like you are really invested in my experience, and want me to get as much out of these courses as possible this is the best place to start on your journey to learning new material.”— Nadine H.

Thanks for signing up.

We’ll send you a confirmation email shortly.

Sign up and receive emails about and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from

Sign up and receive emails about and our online training library:

Here’s our privacy policy with more details about how we handle your information.

submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.