
Start your programming journey with C, the best language to build basic skills through simple, easy-to-understand examples. Get started and fine-tune your programming understanding through deep insights into individual topics.
Write a simple C program that prints hello using stdio and a main function. Compile with dcc and run the resulting executable to see the output.
Set up Visual Studio Code for C programming, install the C/C++ extension, write a hello world program with stdio, and compile and run it to see the output.
Explore the structure of a C program, from main and braces to return values, with printf usage, compound statements, and the compilation process translating to machine language and the executable.
Declare three variables a, b, and c, compute a + b into c, then print the result with printf using %d, and learn to read input with scanf.
Explore how printf uses format specifiers to substitute placeholders with supplied values. Learn the formats for int, unsigned, long, float, double, char, and string, plus newline escape sequences.
Master basic arithmetic operators in C by using plus, minus, asterisk for multiplication, slash for division, and modulus for the remainder to compute expressions with a and b.
Read input values a and b, compute c with basic arithmetic operators, and demonstrate addition, subtraction, multiplication, and division, plus integer division and the need for float types.
Read three numbers, declare three variables, and print those values to demonstrate solving the average of three numbers in C.
Read three numbers into a, b, and c, then compute their average using (a + b + c) / 3. Learn how operator precedence and parentheses ensure evaluation in C.
Calculate the percentage by dividing the marks by the total marks, 200, as described in the lecture caption. Apply this method to solve the problem.
Read obtained and total marks, compute the percentage, and understand why integer division loses fractions. Use floating-point types and proper printf specifiers to preserve decimals and ensure accurate results.
Explain how variables and constants allocate memory, differentiate integral and floating types, and show how explicit and implicit type conversions affect expression evaluation in C.
Explore how increment and decrement operators work in C, including pre and post forms, how they affect variable values before or after substitution, with practical examples.
Explore the full spectrum of C operators, from unary and binary to the ternary conditional operator, plus magic operators, relational and logical operators, including post-increment behavior and short-circuit evaluation.
Master the C operators: bitwise and logical ops, xor and complement, the address-of operator, and shifts, then learn operator precedence, right-to-left assignment, and compound assignments.
Learn how to compare two numbers with the if statement and relational operators such as greater than, less than, equal to, not equal to, and print the larger value.
Explore how to combine relational expressions with logical operators, including &&, ||, and !, to build nested if statements that identify the largest of three numbers a, b, and c.
Read quantity and unit rate, compute the amount, apply a 10 percent discount if the amount exceeds 500, and print the net price, using simple if constructs in C.
Explore how the if statement controls only the immediately following statement in C and how to group multiple statements into a block, forming a compound statement.
Explore how the switch statement maps a day number to weekdays using cases and an optional default. Learn how break prevents fall-through and clarifies control flow.
Learn to use the while loop in C to repeat statements while a condition is true, with blocks, counting with an increment, and practical examples like printing Hello multiple times.
Understand the do-while exit control loop and how its expression is evaluated at the end, ensuring the body runs at least once and repeats while the condition remains true.
Compare for, while, and do-while loops by illustrating initialization, condition, and increment; repeat a statement while the condition is true, using count and count++, and stop when it becomes false.
Practice using a for loop to print numbers from 1 to 10, starting with i = 1 and incrementing it until the loop ends.
Compute the factorial in C by initializing fact to 1 and multiplying by i from 1 to n in a while loop; n=5 yields 120, with a for loop alternative.
Learn to compute the sum of digits of a number using a loop with modulus and division. For example, 982 yields a digit sum of 19.
Demonstrate how to print a sequence in C using conditional logic, loops, and tracing variables, showing 1 for roll 1, 2 twice, and 3 thrice.
Compute the single digit sum by repeatedly summing the digits of numbers (for example 982) until a single digit remains, using a loop and modulus in C.
Determine if a number is prime by counting its factors from 1 to n and declaring it prime when the count equals 2, as in 5.
Learn how to print all prime numbers from 2 to a given range in C by counting factors and printing numbers identified as prime.
Explore how to define and call functions in C, including parameter types, return values, and the role of main, illustrated by a max function returning the larger of two integers.
Define a function small that returns the smaller of two numbers, using x if x<y else y, then find the smallest of three numbers via nested calls like small(small(a,b), c).
Explore how function calls drive execution flow, identify data types for parameters and returns (integers and doubles), and observe how local variables and arguments are created and destroyed.
Define a C function prime that takes an integer and returns 1 if prime, else 0, using a loop to count factors and a main call to test.
Learn to print all prime numbers within a given range in C by testing factors up to the square root and using break to stop early.
Define a C factorial function that accepts an integer and returns its factorial by looping from 1 to n, multiplying a local accumulator, returning the result, and noting nested function calls.
Learn to compute NCR using factorials by defining a factorial function, an NCR function, and a print routine that outputs all coefficients from r=0 to n, hinting at Pascal triangle.
Explore recursive functions by implementing a factorial example in C, showing how a function calls itself until a base condition stops the recursion and yields the final result.
Understand global variables, their declaration, and their availability throughout the program, and see how a global n interacts with a local variable in read and print functions.
Compare local and static variables in C by example, showing how static locals preserve a single copy across function calls, unlike regular locals that reset each call.
Explore how pointers hold memory addresses and enable direct access to typed values, from int and double variables to pointer to int and double pointer, with dereferencing and binding concepts.
Master multilevel indirection in C by inspecting long, long*, and long**, and learn how many indirection levels to reach the actual variable.
Master the basics of pointers in the C programming language by learning how to modify variables with address and dereference operators, understand pass-by-value versus pass-by-reference, and use pointers across functions.
Master the C swap operation by writing a swap function that uses pointers and addresses to exchange variables, illustrating call by value versus call by reference with a temp variable.
Explore how dynamic memory allocation works in C, including stack and data segments, malloc and free, pointers, and using addresses to manage local and global data.
Master arrays in c programming by learning to store homogeneous elements in a single identifier, access them with zero-based indices, and apply the same logic across all elements using loops.
Find the biggest array element by initializing the first as biggest and scanning the rest, updating when a larger value appears. The example concludes with 30 as the biggest.
Learn to search for an element in an array by its first occurrence, returning the index and printing found it or not found, then refactor into read and search functions.
Transition from static allocation to dynamic memory allocation using malloc to allocate exactly the needed elements, avoiding wasted memory. Access via a pointer.
Sort an array using selection sort in C, swapping to place smallest elements front with a temporary variable, and implement dynamic memory allocation with malloc, including input and error handling.
Understand how C stores characters as ASCII codes, print them with %c, read input with get or getchar, and use ctype functions like isalpha and isdigit to classify characters.
Explore how strings are stored in memory as character arrays with a null terminator, differentiate characters and strings, and read and print strings in C using scanf and loops.
Count the number of ovals in a string by iterating characters and tallying matches, using C with optional uppercase normalization and final output.
Check whether a string is a palindrome by calculating its length and comparing mirrored characters up to half, using an isPalin function. Return 1 for palindrome, 0 otherwise.
Master common c string functions from string.h, including strlen, strcpy, strcat, and strcmp, with examples of copying, concatenating, and dictionary-order comparison using ascii codes.
Master the use of two dimensional arrays by declaring a matrix with row and column sizes, using zero based indices to access and print elements.
Learn to perform matrix addition in C by reading two matrices of the same size, adding corresponding cells to form matrix c, and printing the result.
Learn matrix multiplication by verifying the first matrix's columns equal the second's rows. Compute C[i][j] as the sum over k of A[i][k]·B[k][j], using 1x3 and 3x1 examples.
Learn to sort strings by treating them as a two-dimensional array of characters and adapt the existing sort logic to compare and copy strings using string copy and string compare.
Explore C structures by declaring with the struct keyword, accessing members with the dot operator, and viewing how each instance maintains its own copy of fields like x and y.
Explore pointers to structures by examining how structures hold fields, how pointers reference them, and access with dot and arrow operators, plus by value vs by reference in functions.
Understand how unions allocate memory by sharing space for its largest field, and note that only one field can be used at a time, otherwise results are unpredictable.
Learn how typedef creates an alias for an existing type in C, simplifying declarations by naming types such as currency for double or removing struct prefixes for complex types.
C Programming Language is one of the most popular and powerful programming language. It is still the most sought programming language by developers. In my opinion if you are looking to get started with programming it would be great to get started with C as it helps you understand the fundamentals in depth and build a very strong founding for a bright career as a software developer.
If you are a beginner or someone who is looking to get started with programming then this C language course is an ideal choice for you. Through this course you will start building the essential programming skills using simple and easy to understand examples, once you are done with the course you gain in depth understanding of the constructs in C programming language.
There is a myth about programming, people tend to feel that programming is tough, but programming is fun provided you understand the basics right, this course will work on those basics and tries to remove all those myths by explaining you the topics with simple and easy to understand examples. Having said that it is also important for you to set aside a time slot for programming on a day to day basis.
It is important to understand any topic with "why?" perspective so that it helps you apply the skills better. Hope and wish you will find this C Programming course useful and informative.