SlideShare ist ein Scribd-Unternehmen logo
1 von 46
Operators and
Expressions
in C
2+3
Operand
Operator
Operand: a data item on which operators
perform operations.
Operator: a symbol that tells the compiler to
perform specific mathematical or logical
functions.
Definition:
Operators in C
C language is rich in built-in operators and provides the
following types of operators −
1. Arithmetic operators
2. Relational operators
3. Logical operators
4. Assignment operators
5. Increment and decrement operators
6. Conditional operator
7. Bitwise operators
8. Comma operator
Properties of Operators
i)Precedence:
 priority given to the operator for a process
 In arithmetic operators,*,/,% are highest
priority and similar precedence,+ and –
have lowest precendence.
 Example: 8+9*2-10
=8+18-10
=26-10
=16
ii) Associativity:
 Direction of execution.
 Used when an expression has operators
with equal precedence.
 Two types:
A)left to right:
◦ Example: 12*4/8%2
◦ Since all operators have same
precedence,proceed left to right.
=48/8%2
=6%2
=0
 A) Right to Left:
◦ Example: x=8+5%2
◦ Assignment operator has right to left
associativity,hence right side solved
first(8+1=9) and then assigned to left
side.(x=9)
Priority of Operators
Rules for evaluation of
expression
1. First parenthesized sub expression from left to
right are evaluated.
2. If parentheses are nested, the evaluation begins
with the innermost sub expression
3. The precedence rule is applied in determining the
order of application of operators in evaluating sub
expressions
4. The associatively rule is applied when 2 or more
operators of the same precedence level appear
in a sub expression.
5. Arithmetic expressions are evaluated from left to
right using the rules of precedence
6. When parentheses are used, the expressions
within parentheses assume highest priority
Examples
x=5*4+ 8/2;
1 2
3
( 8 / ( 2* ( 2 * 2 )));
1
2
3
Example
Evaluate x1=(-b+ sqrt (b*b-4*a*c))/(2*a) @
a=1, b=-5, c=6
=(-(-5)+sqrt((-5)(-5)-4*1*6))/(2*1)
=(5 + sqrt((-5)(-5)-4*1*6))/(2*1)
=(5 + sqrt(25 -4*1*6))/(2*1)
=(5 + sqrt(25 -4*6))/(2*1)
=(5 + sqrt(25 -24))/(2*1)
=(5 + sqrt(1))/(2*1)
=(5 + 1.0)/(2*1)
=(6.0)/(2*1)
=6.0/2 = 3.0
Comma Operator(,)
 Used to separate two or more
expressions.
 Lowest priority
 Not essential to parenthesise.
void main()
{
printf(“addition =%d n Subtraction=%d,2+3,5-4);
}
Addition=5
Subtraction=1 //first +evaluated,then , evaluated
Conditional Operator(? :)
 Contains condition followed by two
statement or values.
 Ternary operator:takes 3 arguments.
 If condition true,first statement
executed,otherwise second executed.
 Syntax:
Condition? (expression1): (expression2)
void main()
{
printf(“result =%d”,2==3?4:5);
}
Result=5
Arithmetic Operators
Arithmetic Operators
Unary
(require one
operand)
Binary
(require 2
operands)
Arithmetic Operators
Operator example Meaning
+ a + b Addition
- a – b Subtraction
* a * b Multiplication
/ a / b Division
% a % b Modulo division- remainder
Cannot be
used with
reals
Binary Operators
 %,* and %
◦ are solved first.
◦ have equal level of precedence.
◦ When occur together,solved from left to
right.
 + and –
◦ solved after /,*,%.
◦ have equal level of precedence.
◦ evaluated from left to right.
Unary Operators
Operator Example Meaning
- -a Minus
++ a ++ Increment
-- a -- Decrement
& &a Address operator
sizeof sizeof(a) Gives the size of an
operator
 A)minus(-):
• used for indicating or changing the
algebraic sign of a value.
• Example:
int x=-50 assigns the value of -50 to x.
• No unary plus(+) in C,even though a
value assigned with + sign is valid,still not
used in practice.
B)Increment and Decrement
Operators:
 Used because fast as compared to
assignment counterpart.
 ++ adds a value 1 to the operand
 -- subtracts 1 from its operand.
Prefix ++a or a++ Postfix
--a or a--
Rules for ++ & -- operators
1. These require variables as their
operands
2. When postfix either ++ or -- is used
with the variable in a given expression,
the expression is evaluated first and
then it is incremented or decremented
by one
3. When prefix either ++ or – is used with
the variable in a given expression, it is
incremented or decremented by one
first and then the expression is
evaluated with the new value
Examples for ++ & --
operators
Let the value of a =5 and b=++a then
a = b =6
Let the value of a = 5 and b=a++ then
a =5 but b=6
i.e.:
1. a prefix operator first adds 1 to the
operand and then the result is
assigned to the variable on the left
2. a postfix operator first assigns the
value to the variable on left and then
increments the operand.
Examples:
x=20; x=20;
y=10; y=10;
z=x*y++; z=x*++y;
z=? z=?
Example-postfix
void main()
{
int a,z,x=10,y=20; Output:
clrscr(); 200 210
z=x*y++;
a=x*y;
printf(“n %d %d”,z,a);
}
Example-prefix
void main()
{
int a,z,x=10,y=20; Output:
clrscr(); 210 210
z=x*++y;
a=x*y;
printf(“n %d %d”,z,a);
}
C)sizeof and ‘&’Operator:
 Sizeof gives the bytes occupied by a
variable.
 Size of a variable depends upon its
datatype.
 ‘&’ prints address of the variable in
memory.
void main()
{
int x=2;
float y=2;
clrscr();
printf(“n sizeof(x)= %d bytes”,sizeof(x));
printf(“n sizeof(y)= %d bytes”,sizeof(y));
printf(“n address of x= %u and y=%u”,x,y));
}
Sizeof(x)=2
Sizeof(y)=4
Address of x=4088 and y=34567
Relational Operators
 Used to distinguish between two
values depending on their relation.
 Provide the relationship between two
expressions.
 If the relation is true,then it returns a
value 1otherwise 0 for false.
 binary operators because they take
two expressions as operands.
Relational Operators
Operator Meaning
< Is less than
<= Is less than or equal to
> Is greater than
>= Is greater than or equal to
== Equal to
!= Not equal to
void main()
{
printf(“n condition : return valuesn”);
printf(“n10!=10 : %d”,10!=10);
0
printf(“n10==10 : %d”,10==10);
1
printf(“n10>=10 : %d”,10>=10);
1
printf(“n10<=100 : %d”,10<=100);
1
printf(“n10!=9: %d”,10!=9);
Assignment Operator(=)
 Used for assigning a value.
 Syntax:
v op = exp;
where v = variable,
op = shorthand assignment
operator
exp = expression
 Ex: x=x+3
x+=3
Shorthand Assignment
operators
Simple assignment
operator
Shorthand operator
a = a+1 a + =1
a = a-1 a - =1
a = a* (m+n) a * = m+n
a = a / (m+n) a / = m+n
a = a %b a %=b
Logical Operators
 The logical relationship between the
two expressions is tested with logical
operators.
 Can be used to join two expressions.
 After checking the conditions,it
provides logical true(1) or false(0)
status.
Operator Meaning
&& Logical AND
|| Logical OR
! Logical NOT
Rules:
&& provides true result when both
expressions are true,otherwise 0.
|| provides true result when one of the
expressions is true,otherwise 0.
! Provides 0 if the condition is
true,otherwise 1.
Truth Table
a b
Value of the expression
a && b a || b
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 1
Examples
void main()
{
printf(“%d”,5>3 &&5<10); 1
printf(“%d”,8>5 ||8<2); 1
printf(“%d”,!(8==8)); 0
}
Practice questions
Q1.Write a program to display 1 if inputted
number is between 1 and 100 otherwise
0.Use the logical and(&&)operator.
void main()
{
printf(“enter number:”);
scanf(“%d”,&x);
z=(x>=1 && x<=100 ? 1 : 0);
printf(“z=%d”,z);
}
Practice questions
Q2.Write a program to display 1 if inputted
number is either 1 or 100 otherwise
0.Use the logical or(||)operator.
void main()
{
printf(“enter number:”);
scanf(“%d”,&x);
z=(x==1 || x==100 ? 1 : 0);
printf(“z=%d”,z);
}
Practice questions
Q3.Write a program to display 1 if the
inputted number is except 100 otherwise
0.Use the logical not(!)operator.
void main()
{
printf(“enter number:”);
scanf(“%d”,&x);
z=(x!=100 ? 1 : 0);
printf(“z=%d”,z);
}
Bitwise Operators
 These operators allow manipulation of
data at the bit level.
 These operators can operate only on
integer operands such as
int,char,short,long.
Operator Meaning
& Bitwise AND
| Bitwise OR
^ Bitwise exclusive OR
<< Shift left
>> Shift right
~ One’s complement
Truth table
Example
 Assume A = 60 and B = 13.
In binary format, they will be as follows −
A = 0011 1100
B = 0000 1101
A&B = 0000 1100
A|B = 0011 1101
A^B = 0011 0001
~A = 1100 0011
Right Shift
 It is denoted by >>
 Bit Pattern of the data can be shifted by
specified number of Positions to Right
 When Data is Shifted Right , leading zero’s
are filled with zero.
 Right shift Operator is Binary Operator [Bi –
two]
Right shift
Q.Write a program to shift inputted data by two
bits rights.
void main()
{
int x,y;
printf(“read the integer from the keyboard:”);
scanf(“%d”,&x);
x>>=2;
y=x;
printf(“the right shifted data is : %d”,y);
}
Left Shift
 It is denoted by <<
 Bit Pattern of the data can be shifted by
specified number of Positions to Left
 When Data is Shifted Left , trailing zero’s
are filled with zero.
 Left shift Operator is Binary Operator [Bi –
two]
Left shift
Q.Write a program to shift inputted data by two
bits left.
void main()
{
int x,y;
printf(“read the integer from the keyboard:”);
scanf(“%d”,&x);
x<<=2;
y=x;
printf(“the right shifted data is : %d”,y);
}
Operators inc c language

Weitere ähnliche Inhalte

Was ist angesagt? (20)

The string class
The string classThe string class
The string class
 
Operators in java
Operators in javaOperators in java
Operators in java
 
C tokens
C tokensC tokens
C tokens
 
Algorithm and c language
Algorithm and c languageAlgorithm and c language
Algorithm and c language
 
Control statements in c
Control statements in cControl statements in c
Control statements in c
 
Operators in java
Operators in javaOperators in java
Operators in java
 
C Token’s
C Token’sC Token’s
C Token’s
 
Decision Making Statement in C ppt
Decision Making Statement in C pptDecision Making Statement in C ppt
Decision Making Statement in C ppt
 
Loops in C Programming Language
Loops in C Programming LanguageLoops in C Programming Language
Loops in C Programming Language
 
Switch statement, break statement, go to statement
Switch statement, break statement, go to statementSwitch statement, break statement, go to statement
Switch statement, break statement, go to statement
 
Loops in Python
Loops in PythonLoops in Python
Loops in Python
 
Pointer in c
Pointer in cPointer in c
Pointer in c
 
Operators in python
Operators in pythonOperators in python
Operators in python
 
Typecasting in c
Typecasting in cTypecasting in c
Typecasting in c
 
If statements in c programming
If statements in c programmingIf statements in c programming
If statements in c programming
 
datatypes and variables in c language
 datatypes and variables in c language datatypes and variables in c language
datatypes and variables in c language
 
Pointers and arrays
Pointers and arraysPointers and arrays
Pointers and arrays
 
If-else and switch-case
If-else and switch-caseIf-else and switch-case
If-else and switch-case
 
Python for loop
Python for loopPython for loop
Python for loop
 
Printf and scanf
Printf and scanfPrintf and scanf
Printf and scanf
 

Ähnlich wie Operators inc c language

Operators and expressions in C++
Operators and expressions in C++Operators and expressions in C++
Operators and expressions in C++Neeru Mittal
 
Chapter 3.3
Chapter 3.3Chapter 3.3
Chapter 3.3sotlsoc
 
This slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxThis slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxranaashutosh531pvt
 
Operators-computer programming and utilzation
Operators-computer programming and utilzationOperators-computer programming and utilzation
Operators-computer programming and utilzationKaushal Patel
 
introduction to c programming and C History.pptx
introduction to c programming and C History.pptxintroduction to c programming and C History.pptx
introduction to c programming and C History.pptxManojKhadilkar1
 
FP 201 Unit 2 - Part 3
FP 201 Unit 2 - Part 3FP 201 Unit 2 - Part 3
FP 201 Unit 2 - Part 3rohassanie
 
Class_IX_Operators.pptx
Class_IX_Operators.pptxClass_IX_Operators.pptx
Class_IX_Operators.pptxrinkugupta37
 
C Sharp Jn (2)
C Sharp Jn (2)C Sharp Jn (2)
C Sharp Jn (2)jahanullah
 
Operators
OperatorsOperators
OperatorsKamran
 
C++ Expressions Notes
C++ Expressions NotesC++ Expressions Notes
C++ Expressions NotesProf Ansari
 
Dti2143 chapter 3 arithmatic relation-logicalexpression
Dti2143 chapter 3 arithmatic relation-logicalexpressionDti2143 chapter 3 arithmatic relation-logicalexpression
Dti2143 chapter 3 arithmatic relation-logicalexpressionalish sha
 
C Operators and Control Structures.pdf
C Operators and Control Structures.pdfC Operators and Control Structures.pdf
C Operators and Control Structures.pdfMaryJacob24
 

Ähnlich wie Operators inc c language (20)

Operators and expressions in C++
Operators and expressions in C++Operators and expressions in C++
Operators and expressions in C++
 
Theory3
Theory3Theory3
Theory3
 
C – operators and expressions
C – operators and expressionsC – operators and expressions
C – operators and expressions
 
Chapter 3.3
Chapter 3.3Chapter 3.3
Chapter 3.3
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem Solving
 
This slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptxThis slide contains information about Operators in C.pptx
This slide contains information about Operators in C.pptx
 
Operators-computer programming and utilzation
Operators-computer programming and utilzationOperators-computer programming and utilzation
Operators-computer programming and utilzation
 
Operators
OperatorsOperators
Operators
 
introduction to c programming and C History.pptx
introduction to c programming and C History.pptxintroduction to c programming and C History.pptx
introduction to c programming and C History.pptx
 
FP 201 Unit 2 - Part 3
FP 201 Unit 2 - Part 3FP 201 Unit 2 - Part 3
FP 201 Unit 2 - Part 3
 
ICP - Lecture 5
ICP - Lecture 5ICP - Lecture 5
ICP - Lecture 5
 
Class_IX_Operators.pptx
Class_IX_Operators.pptxClass_IX_Operators.pptx
Class_IX_Operators.pptx
 
C Sharp Jn (2)
C Sharp Jn (2)C Sharp Jn (2)
C Sharp Jn (2)
 
C Sharp Jn (2)
C Sharp Jn (2)C Sharp Jn (2)
C Sharp Jn (2)
 
Operators
OperatorsOperators
Operators
 
C++ Expressions Notes
C++ Expressions NotesC++ Expressions Notes
C++ Expressions Notes
 
6 operators-in-c
6 operators-in-c6 operators-in-c
6 operators-in-c
 
6 operators-in-c
6 operators-in-c6 operators-in-c
6 operators-in-c
 
Dti2143 chapter 3 arithmatic relation-logicalexpression
Dti2143 chapter 3 arithmatic relation-logicalexpressionDti2143 chapter 3 arithmatic relation-logicalexpression
Dti2143 chapter 3 arithmatic relation-logicalexpression
 
C Operators and Control Structures.pdf
C Operators and Control Structures.pdfC Operators and Control Structures.pdf
C Operators and Control Structures.pdf
 

Mehr von Tanmay Modi

Preprocessor directives in c laguage
Preprocessor directives in c laguagePreprocessor directives in c laguage
Preprocessor directives in c laguageTanmay Modi
 
Pointers in c language
Pointers in c languagePointers in c language
Pointers in c languageTanmay Modi
 
Loops in c language
Loops in c languageLoops in c language
Loops in c languageTanmay Modi
 
Generations of computers
Generations of computersGenerations of computers
Generations of computersTanmay Modi
 
Storage classes in c language
Storage classes in c languageStorage classes in c language
Storage classes in c languageTanmay Modi
 
Union in c language
Union in c languageUnion in c language
Union in c languageTanmay Modi
 
Structures in c language
Structures in c languageStructures in c language
Structures in c languageTanmay Modi
 
Functions in c language
Functions in c languageFunctions in c language
Functions in c languageTanmay Modi
 
Dynamic memory allocation in c language
Dynamic memory allocation in c languageDynamic memory allocation in c language
Dynamic memory allocation in c languageTanmay Modi
 
Decision statements in c laguage
Decision statements in c laguageDecision statements in c laguage
Decision statements in c laguageTanmay Modi
 
Arrays in c v1 09102017
Arrays in c v1 09102017Arrays in c v1 09102017
Arrays in c v1 09102017Tanmay Modi
 

Mehr von Tanmay Modi (12)

Preprocessor directives in c laguage
Preprocessor directives in c laguagePreprocessor directives in c laguage
Preprocessor directives in c laguage
 
Pointers in c language
Pointers in c languagePointers in c language
Pointers in c language
 
Loops in c language
Loops in c languageLoops in c language
Loops in c language
 
Generations of computers
Generations of computersGenerations of computers
Generations of computers
 
Storage classes in c language
Storage classes in c languageStorage classes in c language
Storage classes in c language
 
Union in c language
Union in c languageUnion in c language
Union in c language
 
Structures in c language
Structures in c languageStructures in c language
Structures in c language
 
Functions in c language
Functions in c languageFunctions in c language
Functions in c language
 
Dynamic memory allocation in c language
Dynamic memory allocation in c languageDynamic memory allocation in c language
Dynamic memory allocation in c language
 
Decision statements in c laguage
Decision statements in c laguageDecision statements in c laguage
Decision statements in c laguage
 
Arrays in c v1 09102017
Arrays in c v1 09102017Arrays in c v1 09102017
Arrays in c v1 09102017
 
Cryptocurrency
Cryptocurrency Cryptocurrency
Cryptocurrency
 

Kürzlich hochgeladen

Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxPooja Bhuva
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...Poonam Aher Patil
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.pptRamjanShidvankar
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxPooja Bhuva
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxheathfieldcps1
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfNirmal Dwivedi
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17Celine George
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxJisc
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the ClassroomPooky Knightsmith
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSCeline George
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 

Kürzlich hochgeladen (20)

Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Interdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptxInterdisciplinary_Insights_Data_Collection_Methods.pptx
Interdisciplinary_Insights_Data_Collection_Methods.pptx
 
General Principles of Intellectual Property: Concepts of Intellectual Proper...
General Principles of Intellectual Property: Concepts of Intellectual  Proper...General Principles of Intellectual Property: Concepts of Intellectual  Proper...
General Principles of Intellectual Property: Concepts of Intellectual Proper...
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptxExploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
Exploring_the_Narrative_Style_of_Amitav_Ghoshs_Gun_Island.pptx
 
The basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptxThe basics of sentences session 3pptx.pptx
The basics of sentences session 3pptx.pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17How to Add New Custom Addons Path in Odoo 17
How to Add New Custom Addons Path in Odoo 17
 
Wellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptxWellbeing inclusion and digital dystopias.pptx
Wellbeing inclusion and digital dystopias.pptx
 
Fostering Friendships - Enhancing Social Bonds in the Classroom
Fostering Friendships - Enhancing Social Bonds  in the ClassroomFostering Friendships - Enhancing Social Bonds  in the Classroom
Fostering Friendships - Enhancing Social Bonds in the Classroom
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
How to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POSHow to Manage Global Discount in Odoo 17 POS
How to Manage Global Discount in Odoo 17 POS
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 

Operators inc c language

  • 2. 2+3 Operand Operator Operand: a data item on which operators perform operations. Operator: a symbol that tells the compiler to perform specific mathematical or logical functions. Definition:
  • 3. Operators in C C language is rich in built-in operators and provides the following types of operators − 1. Arithmetic operators 2. Relational operators 3. Logical operators 4. Assignment operators 5. Increment and decrement operators 6. Conditional operator 7. Bitwise operators 8. Comma operator
  • 4. Properties of Operators i)Precedence:  priority given to the operator for a process  In arithmetic operators,*,/,% are highest priority and similar precedence,+ and – have lowest precendence.  Example: 8+9*2-10 =8+18-10 =26-10 =16
  • 5. ii) Associativity:  Direction of execution.  Used when an expression has operators with equal precedence.  Two types: A)left to right: ◦ Example: 12*4/8%2 ◦ Since all operators have same precedence,proceed left to right. =48/8%2 =6%2 =0
  • 6.  A) Right to Left: ◦ Example: x=8+5%2 ◦ Assignment operator has right to left associativity,hence right side solved first(8+1=9) and then assigned to left side.(x=9)
  • 8. Rules for evaluation of expression 1. First parenthesized sub expression from left to right are evaluated. 2. If parentheses are nested, the evaluation begins with the innermost sub expression 3. The precedence rule is applied in determining the order of application of operators in evaluating sub expressions 4. The associatively rule is applied when 2 or more operators of the same precedence level appear in a sub expression. 5. Arithmetic expressions are evaluated from left to right using the rules of precedence 6. When parentheses are used, the expressions within parentheses assume highest priority
  • 9. Examples x=5*4+ 8/2; 1 2 3 ( 8 / ( 2* ( 2 * 2 ))); 1 2 3
  • 10. Example Evaluate x1=(-b+ sqrt (b*b-4*a*c))/(2*a) @ a=1, b=-5, c=6 =(-(-5)+sqrt((-5)(-5)-4*1*6))/(2*1) =(5 + sqrt((-5)(-5)-4*1*6))/(2*1) =(5 + sqrt(25 -4*1*6))/(2*1) =(5 + sqrt(25 -4*6))/(2*1) =(5 + sqrt(25 -24))/(2*1) =(5 + sqrt(1))/(2*1) =(5 + 1.0)/(2*1) =(6.0)/(2*1) =6.0/2 = 3.0
  • 11. Comma Operator(,)  Used to separate two or more expressions.  Lowest priority  Not essential to parenthesise. void main() { printf(“addition =%d n Subtraction=%d,2+3,5-4); } Addition=5 Subtraction=1 //first +evaluated,then , evaluated
  • 12. Conditional Operator(? :)  Contains condition followed by two statement or values.  Ternary operator:takes 3 arguments.  If condition true,first statement executed,otherwise second executed.  Syntax: Condition? (expression1): (expression2) void main() { printf(“result =%d”,2==3?4:5); } Result=5
  • 13. Arithmetic Operators Arithmetic Operators Unary (require one operand) Binary (require 2 operands)
  • 14. Arithmetic Operators Operator example Meaning + a + b Addition - a – b Subtraction * a * b Multiplication / a / b Division % a % b Modulo division- remainder Cannot be used with reals
  • 15. Binary Operators  %,* and % ◦ are solved first. ◦ have equal level of precedence. ◦ When occur together,solved from left to right.  + and – ◦ solved after /,*,%. ◦ have equal level of precedence. ◦ evaluated from left to right.
  • 16. Unary Operators Operator Example Meaning - -a Minus ++ a ++ Increment -- a -- Decrement & &a Address operator sizeof sizeof(a) Gives the size of an operator
  • 17.  A)minus(-): • used for indicating or changing the algebraic sign of a value. • Example: int x=-50 assigns the value of -50 to x. • No unary plus(+) in C,even though a value assigned with + sign is valid,still not used in practice.
  • 18. B)Increment and Decrement Operators:  Used because fast as compared to assignment counterpart.  ++ adds a value 1 to the operand  -- subtracts 1 from its operand. Prefix ++a or a++ Postfix --a or a--
  • 19. Rules for ++ & -- operators 1. These require variables as their operands 2. When postfix either ++ or -- is used with the variable in a given expression, the expression is evaluated first and then it is incremented or decremented by one 3. When prefix either ++ or – is used with the variable in a given expression, it is incremented or decremented by one first and then the expression is evaluated with the new value
  • 20. Examples for ++ & -- operators Let the value of a =5 and b=++a then a = b =6 Let the value of a = 5 and b=a++ then a =5 but b=6 i.e.: 1. a prefix operator first adds 1 to the operand and then the result is assigned to the variable on the left 2. a postfix operator first assigns the value to the variable on left and then increments the operand.
  • 22. Example-postfix void main() { int a,z,x=10,y=20; Output: clrscr(); 200 210 z=x*y++; a=x*y; printf(“n %d %d”,z,a); }
  • 23. Example-prefix void main() { int a,z,x=10,y=20; Output: clrscr(); 210 210 z=x*++y; a=x*y; printf(“n %d %d”,z,a); }
  • 24. C)sizeof and ‘&’Operator:  Sizeof gives the bytes occupied by a variable.  Size of a variable depends upon its datatype.  ‘&’ prints address of the variable in memory.
  • 25. void main() { int x=2; float y=2; clrscr(); printf(“n sizeof(x)= %d bytes”,sizeof(x)); printf(“n sizeof(y)= %d bytes”,sizeof(y)); printf(“n address of x= %u and y=%u”,x,y)); } Sizeof(x)=2 Sizeof(y)=4 Address of x=4088 and y=34567
  • 26. Relational Operators  Used to distinguish between two values depending on their relation.  Provide the relationship between two expressions.  If the relation is true,then it returns a value 1otherwise 0 for false.  binary operators because they take two expressions as operands.
  • 27. Relational Operators Operator Meaning < Is less than <= Is less than or equal to > Is greater than >= Is greater than or equal to == Equal to != Not equal to
  • 28. void main() { printf(“n condition : return valuesn”); printf(“n10!=10 : %d”,10!=10); 0 printf(“n10==10 : %d”,10==10); 1 printf(“n10>=10 : %d”,10>=10); 1 printf(“n10<=100 : %d”,10<=100); 1 printf(“n10!=9: %d”,10!=9);
  • 29. Assignment Operator(=)  Used for assigning a value.  Syntax: v op = exp; where v = variable, op = shorthand assignment operator exp = expression  Ex: x=x+3 x+=3
  • 30. Shorthand Assignment operators Simple assignment operator Shorthand operator a = a+1 a + =1 a = a-1 a - =1 a = a* (m+n) a * = m+n a = a / (m+n) a / = m+n a = a %b a %=b
  • 31. Logical Operators  The logical relationship between the two expressions is tested with logical operators.  Can be used to join two expressions.  After checking the conditions,it provides logical true(1) or false(0) status.
  • 32. Operator Meaning && Logical AND || Logical OR ! Logical NOT Rules: && provides true result when both expressions are true,otherwise 0. || provides true result when one of the expressions is true,otherwise 0. ! Provides 0 if the condition is true,otherwise 1.
  • 33. Truth Table a b Value of the expression a && b a || b 0 0 0 0 0 1 0 1 1 0 0 1 1 1 1 1
  • 34. Examples void main() { printf(“%d”,5>3 &&5<10); 1 printf(“%d”,8>5 ||8<2); 1 printf(“%d”,!(8==8)); 0 }
  • 35. Practice questions Q1.Write a program to display 1 if inputted number is between 1 and 100 otherwise 0.Use the logical and(&&)operator. void main() { printf(“enter number:”); scanf(“%d”,&x); z=(x>=1 && x<=100 ? 1 : 0); printf(“z=%d”,z); }
  • 36. Practice questions Q2.Write a program to display 1 if inputted number is either 1 or 100 otherwise 0.Use the logical or(||)operator. void main() { printf(“enter number:”); scanf(“%d”,&x); z=(x==1 || x==100 ? 1 : 0); printf(“z=%d”,z); }
  • 37. Practice questions Q3.Write a program to display 1 if the inputted number is except 100 otherwise 0.Use the logical not(!)operator. void main() { printf(“enter number:”); scanf(“%d”,&x); z=(x!=100 ? 1 : 0); printf(“z=%d”,z); }
  • 38. Bitwise Operators  These operators allow manipulation of data at the bit level.  These operators can operate only on integer operands such as int,char,short,long.
  • 39. Operator Meaning & Bitwise AND | Bitwise OR ^ Bitwise exclusive OR << Shift left >> Shift right ~ One’s complement
  • 41. Example  Assume A = 60 and B = 13. In binary format, they will be as follows − A = 0011 1100 B = 0000 1101 A&B = 0000 1100 A|B = 0011 1101 A^B = 0011 0001 ~A = 1100 0011
  • 42. Right Shift  It is denoted by >>  Bit Pattern of the data can be shifted by specified number of Positions to Right  When Data is Shifted Right , leading zero’s are filled with zero.  Right shift Operator is Binary Operator [Bi – two]
  • 43. Right shift Q.Write a program to shift inputted data by two bits rights. void main() { int x,y; printf(“read the integer from the keyboard:”); scanf(“%d”,&x); x>>=2; y=x; printf(“the right shifted data is : %d”,y); }
  • 44. Left Shift  It is denoted by <<  Bit Pattern of the data can be shifted by specified number of Positions to Left  When Data is Shifted Left , trailing zero’s are filled with zero.  Left shift Operator is Binary Operator [Bi – two]
  • 45. Left shift Q.Write a program to shift inputted data by two bits left. void main() { int x,y; printf(“read the integer from the keyboard:”); scanf(“%d”,&x); x<<=2; y=x; printf(“the right shifted data is : %d”,y); }