C PROGRAMMING
LANGUAGE
TUTORIAL
WHAT IS C LANGUAGE:-
C is mother language of all
programming language.
It is a popular computer programming
language.
It is procedure-oriented programming
language.
It is also called mid level programming
language.
HISTORY OF C LANGUAGE:-
C programming language was developed
in 1972 by Dennis Ritchie at bell
laboratories of AT&T(American Telephone
& Telegraph), located in U.S.A.
Dennis Ritchie is known as founder of c
language.
It was developed to be used in UNIX
Operating system.
It inherits many features of previous
languages such as B and BPCL.
HISTORY OF C
PROGRAMMING
Language year Developed By
ALGOL 1960 International Group
BPCL 1967 Martin Richards
B 1970 Ken Thompson
Traditional C 1972 Dennis Ritchie
K&RC 1978 Kernighan &
Dennis Ritchie
ANSI C 1989 ANSI Committee
ANSI/ISO C 1990 ISO Committee
C99 1999 Standardization
Committee
FEATURES OF C LANGUAGE:-
There are many features of c language are given below.
1) Machine Independent or Portable
2) Mid-level programming language
3) structured programming language
4) Rich Library
5) Memory Management
6) Fast Speed
7) Pointers
8) Recursion
9) Extensible
FIRST PROGRAM OF C LANGUAGE:-
#include <stdio.h>
#include <conio.h>
void main(){
printf(“JOB HUNT”);
getch();
}
DESCRIBE THE C PROGRAM :-
#include <stdio.h> includes the standard input
output library functions. The printf() function is
defined in stdio.h .
#include <conio.h> includes the console input
output library functions. The getch() function is
defined in conio.h file.
void main() The main() function is the entry
point of every program in c language. The void
keyword specifies that it returns no value.
printf() The printf() function is used to print
data on the console.
getch() The getch() function asks for a single
character. Until you press any key, it blocks the
screen.
INPUT OUTPUT FUNCTION:-
There are two input output function of c
language.
1) First is printf()
2) Second is scanf()
printf() function is used for output. It
prints the given statement to the
console.
Syntax of printf() is given below:
printf(“format string”,arguments_list);
Format string can be %d(integer),
%c(character), %s(string), %f(float) etc.
INPUT/ OUTPUT
FUNCTION
scanf() Function: is used for input. It
reads the input data from console.
scanf(“format string”,argument_list);
DATA TYPES IN C LANGUAGE:-
There are four types of data types in C
language.
Types Data Types
Basic Data Type int, char, float, double
Derived Data Type array, pointer, structure, union
Enumeration Data Type enum
Void Data Type void
KEYWORDS IN C LANGUAGE:-
A keyword is a reserved word. You
cannot use it as a variable name,
constant name etc.
There are 32 keywords in C language as
given below:
auto break case char const contin default do
ue
double else enum extern float for goto if
int long register return short signed sizeof static
struct switch typedef union unsigned void volatile while
OPERATORS IN C LANGUAGE:-
There are following types of operators to
perform different types of operations in C
language.
1) Arithmetic Operators
2) Relational Operators
3) Shift Operators
4) Logical Operators
5) Bitwise Operators
6) Ternary or Conditional Operators
7) Assignment Operator
8) Misc Operator
CONTROL STATEMENT IN C LANGUAGE:-
1) if-else
2) switch
3) loops
4) do-while loop
5) while loop
6) for loop
7) break
8) continue
C IF ELSE STATEMENT:-
There are many ways to use if
statement in C language:
1) If statement
2) If-else statement
3) If else-if ladder
4) Nested if
IF STATEMENT:-
In if statement is used to execute the
code if condition is true.
syntax:-
if(expression){
//code to be execute
}
IF ELSE STATEMENT:-
The if-else statement is used to execute
the code if condition is true or false.
Syntax:
if(expression){
//code to be executed if condition is true
}else{
//code to be executed if condition is false
}
IF ELSE-IF LADDER STATEMENT:-
Syntax:
if(condition1){
//code to be executed if condition1 is true
}else if(condition2){
//code to be executed if condition2 is true
}
else if(condition3){
//code to be executed if condition3 is true
}
...
else{
//code to be executed if all the conditions are false
}
C SWITCH STATEMENT:-
Syntax:
switch(expression){
case value1:
//code to be executed;
break; //optional
case value2:
//code to be executed;
break; //optional
......
default:
code to be executed if all cases are not matched;
}
LOOPS IN C LANGUAGE:-
Loops are used to execute a block of
code or a part of program of the
program several times.
Types of loops in C language:-
There are 3 types of loops in c language.
1) do while
2) while
3) for
DO-WHILE LOOP IN C:-
It is better if you have to execute the
code at least once.
Syntax:-
do{
//code to be executed
}while(condition);
WHILE LOOP IN C LANGUAGE:-
It is better if number of iteration is not
known by the user.
Syntax:-
while(condition){
//code to be executed
}
FOR LOOP IN C LANGUAGE:-
It is good if number of iteration is known
by the user.
Syntax:-
for(initialization;condition;incr/decr){
//code to be executed
}
C BREAK STATEMENT:-
it is used to break the execution of loop
(while, do while and for) and switch
case.
Syntax:-
jump-statement;
break;
CONTINUE STATEMENT IN C
LANGUAGE:-
it is used to continue the execution of
loop (while, do while and for). It is used
with if condition within the loop.
Syntax:-
jump-statement;
continue;
Note:- you can see the example of above
all control statements on.
FUNCTIONS IN C LANGUAGE:-
To perform any task, we can create
function. A function can be called many
times. It provides modularity and
code reusability.
Advantage of function:-
1) Code Resuability
2) Code optimization
SYNTAX TO DECLARE FUNCTION:-
return_type function_name(data_type par
ameter...){
//code to be executed
}
Syntax to call function:-
variable=function_name(arguments...);
CALL BY VALUE IN C LANGUAGE:-
In call by value, value being passed
to the function is locally stored by the
function parameter in stack memory
location.
If you change the value of function
parameter, it is changed for the
current function only.
It will not change the value of
variable inside the caller method
such as main().
#include <stdio.h>
EXAMPLE OF CALL BY VALUE:-
#include <conio.h>
void change(int num) {
printf("Before adding value inside function num=%d \
n",num);
num=num+100;
printf("After adding value inside function num=%d \
n", num);
}
int main() {
int x=100;
clrscr();
printf("Before function call x=%d \n", x);
change(x);//passing value in function
printf("After function call x=%d \n", x);
getch();
return 0;
}
OUTPUT WINDOW :-
Before function call x=100
Before adding value inside function num=100
After adding value inside function num=200
After function call x=100
CALL BY REFERENCE IN C:-
In call by reference, original value is
modified because we pass reference
(address).
EXAMPLE
#include OF CALL BY REFERENCE:-
<stdio.h>
#include <conio.h>
void change(int *num) {
printf("Before adding value inside function num=%d \
n",*num);
(*num) += 100;
printf("After adding value inside function num=%d \
n", *num);
}
int main() {
int x=100;
clrscr();
printf("Before function call x=%d \n", x);
change(&x);//passing reference in function
printf("After function call x=%d \n", x);
getch();
return 0;
}
OUTPUT WINDOW:-
Before function call x=100
Before adding value inside function num=100
After adding value inside function num=200
After function call x=200
RECURSION IN C:-
A function that calls itself, and doen't
perform any task after function call, is
know as tail recursion. In tail
recursion, we generally call the same
function with return statement.
Syntax:-
recursionfunction(){
recursionfunction();//calling self function
}
ARRAY IN C:-
Array in C language is
a collection or group of elements (data). All
the elements of array
are homogeneous(similar). It has
contiguous memory location.
Declaration of array:-
data_type array_name[array_size];
Eg:-
int marks[7];
Types of array:-
1) 1-D Array
2) 2-D Array
ADVANTAGE OF ARRAY:-
1) Code Optimization
2) Easy to traverse data
3) Easy to sort data
4) Random Access
2-D ARRAY IN C:-
2-d Array is represented in the form of
rows and columns, also known as
matrix. It is also known as array of
arrays or list of arrays.
Declaration of 2-d array:-
data_type array_name[size1][size2];
INITIALIZATION OF 2-D ARRAY:-
int arr[3][4]={{1,2,3,4},{2,3,4,5},
{3,4,5,6}};
1 C1 2 C2 3 C34
C4
R1 2 3 4 5
R2 3 4 5 6
R3
POINTER IN C LANGUAGE
Pointer is a user defined data_type
which create the special types of
variables.
It can hold the address of primitive data
type like int, char, float, double or user
define datatypes like function, pointer
etc.
it is used to retrieving strings, trees etc.
and used with arrays, structures and
ADVANTAGE OF POINTER
IN C
Pointer reduces the code and improves
the performance.
We can return multiple values from
function using pointer.
It make you able to access any memory
location in the computer’s memory.
SYMBOL USED IN
POINTER
Symbol Name Description
& (ampersand address of operator determines the
sign) address of a
variable.
* (asterisk sign) indirection operator accesses the value
at the address.
DECLARATION OF
POINTER
Syntax:-
int *ptr;
int (*ptr)();
int (*ptr)[2];
For e.g.-
int a=5; // a= variable name//
int * ptr; // value of variable= 5//
ptr=&a; // Address where it has stored
in memory : 1025 (assume) //
A SIMPLE EXAMPLE OF C POINTER
#include <stdio.h>
#include <conio.h>
void main(){
int number=50;
clrscr();
printf("value of number is %d, add
ress of number is %u",number,&n
umber);
getch();
}
OUTPUT WINDOW
value of number is 50, address of number
is fff4