-
Introduction to Programming Paradigms
-
Imperative Paradigm
-
Declarative Paradigm
Tutors
The Diploma
PROGRAM OVERVIEW
Description
A high-level programming language developed by Dennis Ritchie at Bell Labs in the mid-1970s. Although originally designed as a systems programming language, C has proved to be a powerful and flexible language that can be used for a variety of applications, from business programs to engineering. C is a particularly popular language for personal computer programmers because it is relatively small -- it requires less memory than other languages.
The first major program written in C was the UNIX operating system, and for many years C was considered to be inextricably linked with UNIX. Now, however, C is an important language independent of UNIX.
Although it is a high-level language, C is much closer to assembly language than are most other high-level languages. This closeness to the underlying machine language allows C programmers to write very efficient code. The low-level nature of C, however, can make the language difficult to use for some types of applications.
Latest Version of C
The current latest version of C language is C11, which was introduced in 2011. It is supported by all the standard C language compilers.
Many new features have been introduced in this version and an overall attempt to improve compatibility of the C language with C++ language has been made. We will learn about the C11 edition, once we are done with learning C language, towards the end of this tutorial series.
What will you learn?
C is the most basic programming language that is the base to almost all programming languages. It excels as the model of programming language. C is standardized language that each programmer must learn.
If you are a beginner
Phase 1
Start with tokens i.e. data types, variables, constants, operators.
Study decision making and loops.
Phase 2
Structures
Array
Strings
Pointers
Phase 3
Input Output
File input output
Command line arguments
These basics help you not only in programming but also lay foundation for data structures, algorithm design, UNIX, C++ and many more.
However, if you want to go for advanced course
You must write a lot of programs based on operator precedence, conditional constructs, strings, pointers to arrays, bit formation, stack implementation, standard file I/O, function call etc
Prerequisites
There are no prerequisites to learn C programming. In fact, C is considered as a language to start with for beginners. Just a bit of logical skills should be enough.
CURRICULUM
Programming Paradigms
Classifications of Programming Languages
-
Introduction to Classifications of Programming Languages
-
Low Level Languages
-
Middle Level Languages
-
High Level Languages
Programming Languages Before C
-
Introduction to Programming Languages before C
-
FORTRAN
-
ALGOL
-
COBOL
-
BCPL
-
PASCAL
-
B Language
-
C Language
About C Language
-
Evolution of C Language
-
What Language C was Written?
-
Characteristics of C
-
Is C Procedural Oriented Language?
Reasons to use C Language
-
Introduction to Reasons to use C Language
-
C Language Learning Outcomes
-
C as General Purpose Language
-
Standard Libraries in C
Introduction to C Language
-
Overview of C Language
-
Features of C
-
C Language Processing System
-
Memory Regions
-
Structure of C Program
Installation Procedure
-
Installation Procedure
Compilation and Execution
-
Introduction to Compilation and Execution
-
Errors During Compilation and Runtime
-
Compilation Errors
Tokens
-
Introduction to Tokens
-
Keywords
-
Constants
-
Identifiers
-
Special Symbols
-
Variables
-
Opearators
Data Types : Primary Data Types
-
Introduction to Data Types
-
Integer Data Types
-
Floating Point Data Types
-
Character Data Types
-
Void Data Types
Data Types : Secondary Data Types
-
Array and Pointer
-
Structure
-
Union
-
enum
Modifiers and Format Specifiers
-
Modifiers
-
Format Specifiers
First C Program using printf and scanf Functions
-
First C Program using printf Function
-
First C Program using scanf Function
Escape Sequence and Comments
-
Escape Sequence
-
Comments
Operators : Unary Operators
-
Introduction to Operators
-
Increment Operator
-
Decrement Operator
C Programs on Unary Operators
-
Program on Increment and Decrement Operators
Operators : Binary Operators
-
Introduction to Arithmetic Operators
-
Introduction to Assignment Operators
-
Relational Operators
-
Logical Operators
-
Introduction to Bitwise Operators
C Programs on Binary Operators
-
Program on Arithmetic Operators
-
Program on Assignment Operators
-
Program on Bitwise Operators
Operators : Ternary and Special Operator
-
Ternary Operator
-
Comma and sizeof Operator
C Programs on Ternary and Special Operators
-
Program on Special Operators
Operators : Operator Precedence and Evaluation
-
Precedence Relation
-
List of Operator Precedence
-
Evaluation of Expression in C
C Programs on Operator Precedence and Evaluation
-
Program on Operator Precedence
Conditional Statements
-
Simple if
-
if..else
-
Nested if
-
if .. else Ladder
-
goto Statement
-
Switch Statement
C Programs on Conditional Statements
-
Program on Switch Statement
Loops : while and do..while
-
Introduction to while Loop
-
Infinite while Loop
-
do..while Loop
C Programs on while and do..while Loop
-
Program to Display 1 to N Numbers using while Loop
Loops : for Loop
-
Introduction to for loop
-
for Loop Code Logic Explanation
C Programs on for Loop
-
Program to Display Values from 1 to 10
-
Program to Print the First "N" Numbers
-
Program to Find Factorial of a Given Number
-
Program to Print Sum of Digits of a Positive Number
Loops : Nested Loop
-
Introduction to Nested while Loop
-
Nested while Loop - Code Logic Explanation
-
Introduction to Nested do..while Loop
-
Nested do while Loop - Code Logic Explanation
-
Introduction to Nested for Loop
C Programs on Nested Loops
-
Program on Nested while Loop
-
Program on Nested do..while Loop
-
Write a Nested for Loop Program To print Values from (0,0) to (2,2)
-
Program on Nested for Loop
Loops : Break, Continue and Return Statements
-
Break Statement
-
Continue Statement
-
Return Statement
C Programs on Break, Continue and Return Statements
-
Program on Break, Continue and Return Statements
Arrays
-
Introduction to Arrays
-
Memory Storage of Arrays
-
Declaration of Arrays
-
One Dimensional Array
-
Two Dimensional Arrays
-
Multi Dimensional Arrays
C Programs on Arrays
-
Program to Display Elements in an Array
-
Program to Find Highest and Lowest Elements in Array
Strings and Arrays
-
Declaring an Array as String
-
Initializing an Array with Strings
C Programs on Strings and Arrays
-
Program on Initializing an Array with Strings
-
Program to Read a String
-
Program to Find Length of a String
-
Program to Copying a String
Strings and Arrays : Array of Strings and Multiple Strings
-
Important Statements while using String
-
Alternative use of Input Function
-
Array of Strings
-
Multiple Strings
C Programs on Array of Strings and Multiple Strings
-
Program on Reading Multiple Strings
-
Program to Display Strings and Addresses
Format Specifiers
-
Introduction to String Format Specifiers
-
List of Format Conversions
C Programs on Format Specifiers
-
Using Format Specifiers
-
Reading a String using scanf()
-
Reading a String using getchar()
-
Read line of Text using gets() and puts()
-
Read Line of Text using fgets()
-
Reading a String using gets() and sscanf()
-
Using sscanf(), sprint() and snprintf()
Pointers
-
Introduction to Memories
-
Introduction to Pointers
-
Benefits of using Pointers
-
Concept of Pointers
-
Declaring and Initializing Pointers
-
Points to Remember while using Pointers
-
Pointer to Pointer
-
Void Pointers
C Programs on Pointers
-
Introduction to Operations on Pointers
-
Program on Pointers when they are Pointing to Different Data
-
Program on Increment / Decrement of a Pointer when Pointer Points to an Array
-
Addition/Subtraction of a Constant Number to Pointer
-
Subtraction of One Pointer to Another Pointer
-
Comparison of Two Pointers
Pointer and Strings
-
Introduction to Pointer and Strings
-
Declaration of a Pointer to Handle a String
C Programs on Pointer and Strings
-
Reading a String using Pointer
-
Reading a String with Spaces using Pointer
-
Reading a String using Pointer and Array
-
Copy a String using Pointer
-
Reading a String using Dynamic Memory
Functions
-
Introduction to Functions
-
Function Prototype
-
Defining a Function
-
Calling a Function
C Programs on Functions
-
Introduction to Classification of Functions
-
Function without Arguments and without Return Value
-
Function without Arguments and with Return Value
-
Function with Arguments and with Return Value
-
Function with Arguments and without Return Value
-
Functions Execution During Runtime
Functions : Parameter Passing Techniques
-
Introduction to Parameter Passing Techniques
-
Call by Value
-
Call by Reference
C Programs on Parameter Passing Techniques
-
Program on Call by Value and Call by Reference in Same Function
Functions : Recursive Functions
-
Introduction to Recursive Functions
-
Infinite Recursive Function
-
Direct Recursion
-
Indirect Recursion
C Programs on Recursive Functions
-
Recursion using Static Variable - Code Logic Explanation
-
Recursion using Static Variable - Code Implementation
Storage Class Specifiers
-
Introduction to Storage Class Specifiers
-
Automatic Specifier
-
Register Specifier
-
Static Specifier
-
External Specifier
Scope of Variables
-
Introduction to Scope of Variables
-
Local and Global Variables
Important Statements
-
sizeof Operator
-
Semicolon
-
Comma
-
Blocks
-
ASCII Codes
-
const Keyword
-
Type Casting
Structures
-
Introduction to Structures
-
Defining a Structure
-
Accessing Structure Members
-
Initialization and Declaring Structure Variables
-
Nested Structures
-
Self Referential Structure
Union
-
Introduction to Union
-
Declaring Union
-
Accessing an Union Member
-
Memory Allocation in Union
-
Difference Between Structures and Unions
-
Introduction to Bit Fields
C Programs on Union
-
Program on Bit FieldsProgram on Bit Fields
Enumerations (enum)
-
Introduction to Enumeration
-
Introduction to Typedef
C Programs on Enumerations
-
Program on Enumerated Data Types
-
Program to Find the Size of Different Variables for Structures
C Programs on Combination of Pointers, Structures, Arrays and Functions
-
Introduction to Combination of Pointers, Structures, Arrays and Functions
-
Arrays and Pointers
-
Pointer to Array
-
Array of Pointers
-
Function with Arrays
-
Function with Strings
-
Passing and Returning Pointer to Functions
-
Pointer to Functions
-
Variable Number of Arguments of a Function
-
Pointer with Structures
-
Structures with Arrays
-
Structures with Functions
Dynamic Memory Allocation
-
Introduction to Memory Allocation
-
Malloc
-
Calloc
-
Realloc
-
Free
Common Mistakes
-
Formatted Input and Output
-
Using Undeclared and UnInitialized Variables
-
Missing Break in Switch Case Statements
-
Subtracting Pointers that do not Refer Same Array
-
Checking Strings Equality Errors
-
Infinite Loops
-
Not Understanding use of Strings and Character Arrays
Problems with Pointers
-
Wild Pointers
-
Introduction to NULL Pointers
-
Introduction to Dangling Pointers
-
Aliasing Pointers
-
Suspicious Pointers
C Programs on Problems with Pointers
-
Program on Null Pointers
-
Program on Dangling Pointers
-
Program on Handling Dangling Pointer with Dynamic Memory
Preprocessor Directives
-
Introduction to Preprocessor Directives
-
File Inclusion
-
Program on File Inclusion
-
Macros Expansion
-
Object-like Macros
-
Function-like Macros
Preprocessor Directives : Conditional Compilation
-
#if – if
-
#ifdef – if defined
-
#endif – end if
-
#else – else
-
#ifndef – if not defined
C Programs on Preprocessor Directives
-
Program - 1 on Preprocessor Directives
-
Program - 2 on Preprocessor Directives
Files
-
Introduction to Files
-
Opening a File
-
Closing a File
-
Types of Files
-
Sequential Files
-
Error Handling in Files
-
Database vs File System
-
Command Line Arguments
C Programs on Files
-
Program on Opening and Closing a File
-
Program on Error Handling in Files
-
Writing to a Text File
-
Reading from a Text File
-
Reading and Writing from a Text File
-
Write the Strings into a File
-
Read the Strings from a File
C Programs on Binary Operations of Files
-
Introduction to Binary Operations on Files
-
Reading and Writing Data to a Binary File
-
Program on Writing and Reading Data to a Binary File
-
Program to Write a Student Data into a File
-
Program to Read a Student Data from a File
-
Program on Writing and Reading to a Binary file using fwrite() and fread()
Files : Random Access Files
-
Introduction to Random Access Files
-
fseek()
-
ftell()
-
rewind()
Graphics
-
Introduction to Graphics
-
Introduction to Graphic Drivers and Modes
C Programs on Graphics
-
Program to Convert Text Mode to Graphic Mode
-
Program to Print Text using Graphics
Graphics : Basic Color Functions
-
textcolor() Function
-
textbackground() Function
-
setcolor(),setbkcolor() and settextstyle() Functions
C Programs on Basic Color Functions using Graphics
-
Program on setcolor(),setbkcolor() and settextstyle() Functions
Graphics : Library Functions
-
Introduction to Graphics Library Functions
-
line()Function
-
circle()Function
-
rectangle()Function
-
bar( )Function
-
ellipse()Function
-
Graphic Functions
C Programs on Library Functions using Graphics
-
Program on All Library Functions
QUIZ
-
Quiz on Strings
-
testing
test
- This section has no content published in it.