C Programming - Complete Tutorial For Beginners

The course will teach you C language from beginner to advanced level. Will prepare you for your technical interview.
4.4 (172 ratings) Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
4,140 students enrolled
$20
Take This Course
  • Lectures 112
  • Contents Video: 12.5 hours
  • Skill Level All Levels
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works

Discover

Find online courses made by experts from around the world.

Learn

Take your courses with you and learn anywhere, anytime.

Master

Learn and practice real-world skills and achieve your goals.

About This Course

Published 8/2015 English

Course Description

I have been teaching this course to the undergraduate engineering students for last 15 years in class room. This course is well designed and covered almost all the topics that one should know while learning C language. Will not only help the student to build a solid foundation on the topic but will boost their confidence to face technical interviews boldly.

The course contents are mostly video lectures. I would encourage absolute beginners to follow the lectures strictly in chronological manners, please start from the very first video and go to the next one only if you are done with the previous. However, though not recommended, but students with some previous knowledge could jump lectures if they are confident.

The course is structured basically for the new programmers who may not have any previous experience with any programming language. From the very basic to advanced topics. Simple program to complex one in step-by-step.

One should take this course to build a career as a programmer. Programming in C has been considered as foundation for any programming language. If one is confident with C, then can start learning any other language like PHP, C++ or Java.

What are the requirements?

  • Download Netbeans IDE (You need to download JDK for this as well) or Codeblocks IDE, I have given video lectures how to install these in your system. Don't worry I will guide you to download and install them.
  • If you face any issue while downloading or installing necessary software, please go ahead and post it in the discussion forum, I will provide solution as soon as possible.

What am I going to get from this course?

  • write C programs independently
  • face technical interviews with confidence
  • will be able to do assignments in C programs

What is the target audience?

  • This course is A-Z on C programming language, therefore, anyone can take this course, even absolute beginners in programming will face no problem doing this course
  • Any undergraduate student having C programming in curriculum
  • If you have previous experience in C programming or with any other programming language then this course is going to make your foundation more strong

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.

Curriculum

Section 1: Start learning C programming
Introduction
Preview
02:04
Installing xcode command line tool for Mac
Preview
04:12
How to download and install Codeblocks
Preview
06:43
05:51

This tutorial shows how to use netbeans IDE for C projects. How one can create a project, how to compile and execute.

07:32

This tutorial describes how we can write a C program in any text editor and how we can compile and execute from terminal, though I have used mac terminal but the same procedure could be followed in Linux and Windows as well.

For Windows, however, one should set path of gcc home directory, I will provide another tutorial for that as well.

Section 2: Fundamentals that you always need to know
16:26

This tutorial describes everything about the first program that prints "Hello World" into the console.

13:14

This tutorial discusses how to declare variables and how to input data into program using keyboard from standard input console.

05:17

#include <stdio.h>

int main() {

int var = 45;

printf("var = %d\n", var);

printf("var = %o\n", var); // prints octal equivalent of 45,

printf("var = %x\n", var); // prints hexadecimal equivalent of 45

int var1 = 056; // any numeric constant starting with 0 is octal constant

printf("var1 = %d\n", var1); // prints decimal equivalent of octal 56

printf("var1 = %o\n", var1); // prints 56

printf("var1 = %x\n", var1); // prints hexadecimal equivalent of octal constant 56

int var2 = 0xa; // any numeric constant starting with 0x is hexadecimal constant

printf("var2 = %d\n", var2); // prints decimal equivalent of hexadecimal value a

printf("var2 = %o\n", var2); // prints octal equivalent of hexadecimal a

printf("var2 = %x\n", var2); // prints a

return 0;

}

Arithmetical Operators in C
02:47
Dealing with characters
09:01
Flushing problem while taking character input
05:34
Idea of casting
04:05
The secret of printf
02:32
The secret of scanf
02:16
The most neglected operator - Assignment operator
01:51
Relational operators for comparing values
04:44
Can you take this challenge?
01:43
Introduction to Logical Operator, AND operation
06:51
Logical OR operation
04:12
Logical NOT operation
04:27
Unary increment and decrement operator
10:37
Short circuit feature of AND and OR operation
Preview
04:28
11 questions

Test yourself, how strong you are on the very basic things like variable declarations, operators, initialisation.

Section 3: Branching, taking course of action on the basis of result of condition
"To be or not to be" - how to decide using if-else
Preview
10:56
Going further, the if-else-if structure
04:47
Another programming example on if-else-if, this will help you more.
05:30
Are you sure you can answer this? Take a look.
01:55
Ops! Not done yet, here is some more information on if-else
03:37
Make it smart using conditional operator, the only ternary operator in C
05:01
Nested if-else, checking leap year.
09:29
5 questions

Quiz on if-else structure. You need to take decision firmly, always, are you sure?

Section 4: Do it again and again until satisfied, technique for iteration.
Introduction to loop, while loop.
05:05
While loop - Programming Example 1
Preview
06:55
While loop - Programming Example 2
03:24
Take a challenge on while loop, here is interesting "predict output" on while.
03:59
All about smart looking for loop
12:27
First do then check, do-while loop
08:14
How to break a loop early: use of 'break' keyword
03:29
The other loop utility: 'continue' keyword
02:55
Generating random numbers, the rand() function
09:12
Section 5: Array: the collection
Introduction to one dimensional array
Preview
08:47
Initialisation of one dimensional array
02:25
Allocating array dynamically, Example input output operations with array
04:18
A programming example using 1-D array
08:04
Introduction to two dimensional array
11:34
2-D array programming example
08:09
Section 6: Way to store and manipulate string in C programming
Introduction to string, using character array for storing string
07:15
How to input string from keyboard
07:06
Finding the length of string
05:40
Searching and counting target in string
04:51
Library function for string operations, string.h
06:30
Section 7: Modularise your program using function.
Introduction to function
10:32
Prototype or signature of function, declaring a function.
06:41
Create your own library, distribute functions to others.
13:46
Function example 1, a function to check prime number
09:29
More example on function
Preview
05:58
Another example, a function to test Armstrong Number
13:30
Section 8: Recursion, how to write recursive functions.
Introduction to recursion.
07:59
Introduction continues...
06:53
Recursion vs Iteration, the big debate, Concept of TAIL recursion.
07:17
The debate continues... when exactly iteration is preferable.
09:20
Still in debate... when recursion is preferable.
09:29
Tower of Hanoi, the classical example of recursion.
06:21
Implementation of Tower of Hanoi
07:08
Another example, Fibonacci term.
03:17
Section 9: Storage class, important conception
Introduction to storage class, the auto storage class
Preview
11:27
Storage class: static
03:25
Storage class: extern
10:28
Storage class: register
04:23
Section 10: Pointers, tweak with memory locations.
Conception of stack and heap memory
Preview
04:48
Introduction to pointers
09:15
Introduction to pointers, continues...
05:23
Introduction to pointers, continues...
07:00
Address arithmetic
08:44
More on pointers
04:11
How and when to use pointers in C program
07:45
More programming example
Preview
04:34
Relationship between one dimensional array and pointers
09:45
Passing one dimensional array to function
06:22
More example on passing one dimensional array to function
Preview
05:05
use of const keyword with pointer
Preview
08:24
Add some more glue
08:56
The generic pointer is void pointer
02:49
Dynamic memory allocation - malloc function
12:44
Dynamic memory allocation - calloc function
02:24
Dynamic memory allocation - realloc function
05:00
Immutable property of string literals
02:35
Array of pointers - part 1
10:31
Array of pointers-part 2(Simulation of dynamic 2D array using array of pointers)
12:06
Section 11: User defined type in C - structure, union and enum

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Shibaji Paul, Programming Instructor with 14+ years of experience

Hi, I have been teaching computer science and programming since 2001. I did my M Tech in Computer Science and remained visiting faculty to the CSE department of Narula Institute of Technology. I have my own training institute where I provide training on various programming languages and technologies to the B Tech students on C, C++, Java, Android programming, Data structure and Algorithm, DBMS, SQL and PL/SQL.

In my class room I usually teach 100-150 students per semester on different subjects. With the udemy platform now it is possible to teach and spread my knowledge to thousands (may be more)of students across the globe, Udemy opens up vast opportunity for instructor like me and that with remuneration. I guess it's going to be a fantastic.

When I am not taking class I enjoy learning some new technologies. In my leisure time one could find me enjoying with my kids or gossiping with my beautiful wife over a container of tea. I am a "tea-totaller" (guess the meaning :) ) and hate smoking. I have a definite plan to launch an online course on topic "How to drink tea - the best way" on udemy for sure and also on "How to quit smoking - the best way".

Let's hope for the best, happy learning.

Ready to start learning?
Take This Course