Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Introduction to Programming: C/C++
Rating: 4.4 out of 5(76 ratings)
308 students

Introduction to Programming: C/C++

A Master Course from Beginner to Expert
Last updated 6/2022
English
English [Auto],

What you'll learn

  • Programming Fundamentals
  • C Programming
  • C++ Programming
  • Object-Oriented Programming
  • Introductory Software Development
  • Computer Science
  • Procedural Programming
  • Explicit Typing
  • Implicit Typing
  • Generic Typing

Coding Exercises

This course includes our updated coding exercises so you can practice your skills as you learn.

See a demo
Image of coding exercise example

Course content

7 sections35 lectures10h 47m total length
  • Introduction, how to succeed in the course13:53

    Explore C fundamentals, control flow, memory management, and files, then contrast C with C++ concepts, finish with a capstone project and final exam, reinforced by code-based quizzes.

  • What is C, understanding programming, setup14:15

    Understand what C is and how it relates to other languages, and set up Visual Studio Code with the C/C++ extension to compile code and print hello world.

  • Hello World10:13

    Write your first C program by including stdio.h, defining int main(void), printing hello world with printf, and returning 0, with braces and semicolons guiding basic syntax.

  • Data Types19:46

    Explore data types in C, including int, float, double, long, char, and strings, and learn about signed and unsigned numbers, constants, and explicit typing.

  • Input and Output11:08

    Learn to print and input in C/C++, using printf and scanf, format specifiers for numbers and strings, and printing expressions like a plus b equals c.

  • Commenting7:16

    Understand that comments do not affect execution, learn line and multiline styles, and use documentation comments to describe functions, parameters, and returns for future readability.

  • Operators13:00

    Demonstrates arithmetic and modulus operators in C, shows integer division behavior, and introduces casting to float, while using printf and size of to compare int, float, long, double, and char.

  • Conditionals11:11

    Explore how conditionals use if, else, and else if to control program flow, with practical age-based examples showing how to implement fallback and default cases.

  • Nested Conditionals, Switches, and the Ternary Operator21:26

    Master nested conditionals, switch statements, and the ternary operator in C/C++ by exploring if-else patterns, menu logic, case handling, and clean, concise one-line alternatives.

  • Quiz 1
  • Assignment 1
  • Assignment 2

Requirements

  • Internet access

Description

In this course, students will learn elementary programming concepts with the C language, with an additional section studying C++ and the relation between the two languages. Learning C will allow students to develop the basic skills for procedural programming and the fundamentals of object orientation, as well as a short study of C++. Students can use this knowledge to take on learning higher-level languages such as C#, Java, and Python in an accelerated manner. The class will focus on building programming skills from fundamental keywords to high-level abstraction, in hopes that the student will then continue on to learn a high-level programming language afterward.


Students will learn the following aspects of programming using the C language:

Section 1:

-Introduction, how to succeed in the course

-What is C, understanding programming, setup

-Hello World

-Data Types

-Input and Output

-Commenting

-Operators

-Introducing Conditionals

-Conditionals

-Nested Conditionals, Switches

Section 2:

-Logic Operators

-Loops: for, while

-Functions

-Recursion

-Arrays, Matrices

Section 3:

-Strings/String Functions, ASCII

-Pointers

-Function Pointers

-The void Pointer, Static

-Structures

-Unions

Section 4:

-Memory Management

-Memory Functions: malloc, calloc, realloc

-Dynamic Strings and Arrays

-Error Handling

Section 5:

-Working With Files, Binary File I/O, Random Generation

-Preprocessor Directives, Scope, Headers

-Conditional Compilation Directives

-Preprocessor Operators

Section 6 - C++:

-Differences: new data types (strings, boolean), function/argument overloading

-Intro to Classes (constructors, objects)

-Intermediate Classes: class headers, namespaces, member initializer lists

-Advanced Classes: access keywords, 'this', 'friend', inheritance and polymorphism

-Abstract Classes/Interfaces, 'virtual', operator overloading

-Generic Types/Classes (Templates), Exceptions

-Files, Enumerations

Section 7 - Capstone:

-Final exam

-Capstone project


Optional textbooks:

-"C Programming Language, 2nd Edition" by Brian W. Kernighan and Dennis M. Ritchie (Various prices by format and rental); this book is extremely well-known in the programming community for being fundamental to developing one's skills with programming languages.

-"The C++ Standard Library: A Tutorial and Reference, 1st Edition" by Nicolai M. Josuttis (Various prices by format and rental, very cheap on eBay)

Who this course is for:

  • Students interested in learning programming with any level of experience, but especially beginners or anyone unfamiliar with C or C++ as well.