SlideShare uma empresa Scribd logo
1 de 20
Operators and
Expressions


 Name : Vishaljot Kaur Thind
 Section : N2
 Roll No : 115335




                                1
Contents
 Objective
 Introduction
 Arithmetic operations
 Arithmetic expressions
 Relational operators
 Logical operators
 Assignment operators
 Increment and decrement operators
 Conditional operators
 Type conversions in expressions

                                      2
Objectives
♥ To be able to construct and evaluate
  expressions.
♥ To master operator precedence and
  associativity
♥ To understand implicit type conversion and
  explicit type conversion.




                                               3
3.1 Introduction
 An operator is a symbol that tells the computer to
  perform certain manipulations.
 An expression is a sequence of operands and operators
  that reduces to a single value.
 C operators can be classified into a number of
  categories.
    ◦   Arithmetic operators
    ◦   Relational operators
    ◦   Logical operators
    ◦   Assignment operators
    ◦   Increment and decrement operators
    ◦   Conditional operators
    ◦   Bitwise operators
    ◦   Special operators

                                                      4
5


3.2          Arithmetic operators
   The arithmetic operators in C

      Operator                      meaning
         +        Addition or unary plus
         -        Subtraction or unary minus
         *        Multiplication
         /        Division
         %        modulo division
6


3.2         Arithmetic operators
   Note:,
    ◦ Integer division truncates remainder
    ◦ The % operator cannot be applied to a float or
      double.
    ◦ The precedence of arithmetic operators
       Unary + or -
      * / %
      + -
7


3.10           Arithmetic expressions
   An arithmetic expression is a combination of variables,
    constants, and operators.
   For example,
   a*b-c           a*b-c
   (m+n)(x+y)             (m+n)*(x+y)
   ax2+bx+c        a*x*x+b*x+c
8


3.3 Relational Operators
• The relational operators in C are :

      Operator                    Meaning
         <           less that
        <=           less than or equal to
         >           greater than
        >=           greater than or equal to
        ==           equal to
        !=           not equal to
Relational Operators
   A relational expression yields a value
    of 1 or 0.
    ◦5<6                  1
    ◦ -34 + 8 > 23 - 5        0
    ◦ if a=3, b=2, c =1; then a > b > c is ?


   the associativity of relational
    operators is
    left  right
                                               9
3.4 Logical operators
   C has the following three logical
    operators
    ◦ && meaning logical and
    ◦ || meaning logical or
    ◦ ! meaning logical not ( unary operator )
   Expressions connected by && or || are
    evaluated left to right, and evaluation
    stops as soon as the truth or
    falsehood of the result is known.
                                                 10
3.5 Assignment operators
   The use of shorthand assignment
    operators has three advantages:
    ◦ 1. What appears on the left-hand side
      need not be repeated and therefore it
      becomes easier to write.
    ◦ 2. The statement is more concise and
      easier to read.
    ◦ 3. The statement is more efficient.



                                              11
3.6 Increment and decrement
operators
 C provides two unusual operators for
  incrementing and decrementing
  variables.
 The increment operator ++ adds 1 to its
  operand, while the decrement operator --
  subtracts 1.
 The unusual aspect is that ++ and -- may
  be used either as prefix operators
  (before the variable, as in ++n), or postfix
  operators (after the variable: n++).
 In both cases, the effect is to increment
  n. But the expression ++n increments n
  before its value is used, while n++
  increments n after its value has been
  used.
                                             12
   The increment and decrement operators
    can be used in complex statements.
    Example:
                m=n++ -j +10;

   Consider the expression
                  m = - n++ ;
   The precedence of ++ and – operators
    are the same as those of unary + and -.
   The associatively of them is right to left.
   m = - n++; is equivalent to m = - (n++)
                                                  13
3.7 Conditional operator
 a ternary operator pair “? : ” is
  available in C to construct conditional
  expressions of the form
             expr1 ? expr2 : expr3
 the expression expr1 is evaluated first.
  If it is non-zero (true), then the
  expression expr2 is evaluated, and
  that is the value of the conditional
  expression. Otherwise expr3 is
  evaluated, and that is the value. Only
  one of expr2 and expr3 is evaluated.
                                         14
   z = (a > b) ? a : b;   /* z = max(a, b) */




                                             15
3.9 Special operators
 1. The Comma Operator
 The comma operator can be used to link the
  related expressions together. A comma-linked
  list of expressions is evaluated left to right
  and the value of right-most expression is the
  value of the combined expression. For
  example, the statement
 value = (x=10, y=5, x+y);
 first assigns the value 10 to x, then assigns 5
  to y, and finally assigns 15 to value. Since
  comma operator has the lowest precedence
  of all operators, the parentheses are
  necessary.
                                                16
3.14 Type conversions in
expressions
 1. Implicit Type Conversion
 C permits mixing of constants and
  variables of different types in an
  expression. C automatically converts any
  intermediate values to the proper type so
  that the expression can be evaluated
  without loosing any significance. This
  automatic conversion is known as
  implicit type conversion.
 The rule of type conversion: the lower
  type is automatically converted to the
  higher type.
                                          17
3.13 Some Computational
Problems
   When expressions include real values,
    then it is important to take necessary
    precautions to guard against certain
    computational errors. For example,
    consider the following statements:
    ◦ a = 1.0 / 3.0;
    ◦ b = a * 3.0;
 There is no guarantee that the value of b
  will equal 1.
 Another problem is division by zero.
 The third problem is to avoid overflow
  and underflow errors.
                                              18
3.15   Operator precedence
and Associativity
   Rules of Precedence and Associativity
    ◦ (1)Precedence rules decides the order in which
      different operators are applied.
    ◦ (2)Associativity rule decide the order in which
      multiple occurrences of the same level operator
      are applied.
   Table3.8 on page71 shows the summary of C
    Operators.
   for example,
   a = i +1== j || k and 3 != x

                                                        19
   THANKS
             20

Mais conteúdo relacionado

Mais procurados (20)

Variables in C Programming
Variables in C ProgrammingVariables in C Programming
Variables in C Programming
 
Modular programming
Modular programmingModular programming
Modular programming
 
Operators
OperatorsOperators
Operators
 
Tokens in C++
Tokens in C++Tokens in C++
Tokens in C++
 
Data types in c++
Data types in c++Data types in c++
Data types in c++
 
Control Flow Statements
Control Flow Statements Control Flow Statements
Control Flow Statements
 
Basics of c++ Programming Language
Basics of c++ Programming LanguageBasics of c++ Programming Language
Basics of c++ Programming Language
 
Bitwise operators
Bitwise operatorsBitwise operators
Bitwise operators
 
C functions
C functionsC functions
C functions
 
C++ decision making
C++ decision makingC++ decision making
C++ decision making
 
Values and Data types in python
Values and Data types in pythonValues and Data types in python
Values and Data types in python
 
Enumerated data types in C
Enumerated data types in CEnumerated data types in C
Enumerated data types in C
 
Operators in Python
Operators in PythonOperators in Python
Operators in Python
 
class and objects
class and objectsclass and objects
class and objects
 
Arithmetic operator
Arithmetic operatorArithmetic operator
Arithmetic operator
 
Recursion
RecursionRecursion
Recursion
 
Unit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in cUnit ii chapter 1 operator and expressions in c
Unit ii chapter 1 operator and expressions in c
 
Control structures in C++ Programming Language
Control structures in C++ Programming LanguageControl structures in C++ Programming Language
Control structures in C++ Programming Language
 
Introduction to c++ ppt
Introduction to c++ pptIntroduction to c++ ppt
Introduction to c++ ppt
 
Control statements in c
Control statements in cControl statements in c
Control statements in c
 

Semelhante a Operators and expressions

Semelhante a Operators and expressions (20)

Operator in C language
Operator in C languageOperator in C language
Operator in C language
 
Programming for Problem Solving
Programming for Problem SolvingProgramming for Problem Solving
Programming for Problem Solving
 
Types of Operators in C
Types of Operators in CTypes of Operators in C
Types of Operators in C
 
Report on c
Report on cReport on c
Report on c
 
Basic c operators
Basic c operatorsBasic c operators
Basic c operators
 
Chapter 5 - Operators in C++
Chapter 5 - Operators in C++Chapter 5 - Operators in C++
Chapter 5 - Operators in C++
 
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
 
c programming2.pptx
c programming2.pptxc programming2.pptx
c programming2.pptx
 
Opeartor &amp; expression
Opeartor &amp; expressionOpeartor &amp; expression
Opeartor &amp; expression
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till now
 
C++ revision add on till now
C++ revision add on till nowC++ revision add on till now
C++ revision add on till now
 
Operators and it's type
Operators and it's type Operators and it's type
Operators and it's type
 
Coper in C
Coper in CCoper in C
Coper in C
 
Operators
OperatorsOperators
Operators
 
Operators in C Programming
Operators in C ProgrammingOperators in C Programming
Operators in C Programming
 
operator (1).pptx
operator (1).pptxoperator (1).pptx
operator (1).pptx
 
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
[ITP - Lecture 06] Operators, Arithmetic Expression and Order of Precedence
 
Theory3
Theory3Theory3
Theory3
 
Constructor and destructors
Constructor and destructorsConstructor and destructors
Constructor and destructors
 
Fundamentals of Programming Chapter 5
Fundamentals of Programming Chapter 5Fundamentals of Programming Chapter 5
Fundamentals of Programming Chapter 5
 

Último

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 

Último (20)

🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 

Operators and expressions

  • 1. Operators and Expressions  Name : Vishaljot Kaur Thind  Section : N2  Roll No : 115335 1
  • 2. Contents  Objective  Introduction  Arithmetic operations  Arithmetic expressions  Relational operators  Logical operators  Assignment operators  Increment and decrement operators  Conditional operators  Type conversions in expressions 2
  • 3. Objectives ♥ To be able to construct and evaluate expressions. ♥ To master operator precedence and associativity ♥ To understand implicit type conversion and explicit type conversion. 3
  • 4. 3.1 Introduction  An operator is a symbol that tells the computer to perform certain manipulations.  An expression is a sequence of operands and operators that reduces to a single value.  C operators can be classified into a number of categories. ◦ Arithmetic operators ◦ Relational operators ◦ Logical operators ◦ Assignment operators ◦ Increment and decrement operators ◦ Conditional operators ◦ Bitwise operators ◦ Special operators 4
  • 5. 5 3.2 Arithmetic operators  The arithmetic operators in C Operator meaning + Addition or unary plus - Subtraction or unary minus * Multiplication / Division % modulo division
  • 6. 6 3.2 Arithmetic operators  Note:, ◦ Integer division truncates remainder ◦ The % operator cannot be applied to a float or double. ◦ The precedence of arithmetic operators  Unary + or - * / % + -
  • 7. 7 3.10 Arithmetic expressions  An arithmetic expression is a combination of variables, constants, and operators.  For example,  a*b-c  a*b-c  (m+n)(x+y)  (m+n)*(x+y)  ax2+bx+c  a*x*x+b*x+c
  • 8. 8 3.3 Relational Operators • The relational operators in C are : Operator Meaning < less that <= less than or equal to > greater than >= greater than or equal to == equal to != not equal to
  • 9. Relational Operators  A relational expression yields a value of 1 or 0. ◦5<6 1 ◦ -34 + 8 > 23 - 5 0 ◦ if a=3, b=2, c =1; then a > b > c is ?  the associativity of relational operators is left  right 9
  • 10. 3.4 Logical operators  C has the following three logical operators ◦ && meaning logical and ◦ || meaning logical or ◦ ! meaning logical not ( unary operator )  Expressions connected by && or || are evaluated left to right, and evaluation stops as soon as the truth or falsehood of the result is known. 10
  • 11. 3.5 Assignment operators  The use of shorthand assignment operators has three advantages: ◦ 1. What appears on the left-hand side need not be repeated and therefore it becomes easier to write. ◦ 2. The statement is more concise and easier to read. ◦ 3. The statement is more efficient. 11
  • 12. 3.6 Increment and decrement operators  C provides two unusual operators for incrementing and decrementing variables.  The increment operator ++ adds 1 to its operand, while the decrement operator -- subtracts 1.  The unusual aspect is that ++ and -- may be used either as prefix operators (before the variable, as in ++n), or postfix operators (after the variable: n++).  In both cases, the effect is to increment n. But the expression ++n increments n before its value is used, while n++ increments n after its value has been used. 12
  • 13. The increment and decrement operators can be used in complex statements. Example: m=n++ -j +10;  Consider the expression m = - n++ ;  The precedence of ++ and – operators are the same as those of unary + and -.  The associatively of them is right to left.  m = - n++; is equivalent to m = - (n++) 13
  • 14. 3.7 Conditional operator  a ternary operator pair “? : ” is available in C to construct conditional expressions of the form expr1 ? expr2 : expr3  the expression expr1 is evaluated first. If it is non-zero (true), then the expression expr2 is evaluated, and that is the value of the conditional expression. Otherwise expr3 is evaluated, and that is the value. Only one of expr2 and expr3 is evaluated. 14
  • 15. z = (a > b) ? a : b; /* z = max(a, b) */ 15
  • 16. 3.9 Special operators  1. The Comma Operator  The comma operator can be used to link the related expressions together. A comma-linked list of expressions is evaluated left to right and the value of right-most expression is the value of the combined expression. For example, the statement  value = (x=10, y=5, x+y);  first assigns the value 10 to x, then assigns 5 to y, and finally assigns 15 to value. Since comma operator has the lowest precedence of all operators, the parentheses are necessary. 16
  • 17. 3.14 Type conversions in expressions  1. Implicit Type Conversion  C permits mixing of constants and variables of different types in an expression. C automatically converts any intermediate values to the proper type so that the expression can be evaluated without loosing any significance. This automatic conversion is known as implicit type conversion.  The rule of type conversion: the lower type is automatically converted to the higher type. 17
  • 18. 3.13 Some Computational Problems  When expressions include real values, then it is important to take necessary precautions to guard against certain computational errors. For example, consider the following statements: ◦ a = 1.0 / 3.0; ◦ b = a * 3.0;  There is no guarantee that the value of b will equal 1.  Another problem is division by zero.  The third problem is to avoid overflow and underflow errors. 18
  • 19. 3.15 Operator precedence and Associativity  Rules of Precedence and Associativity ◦ (1)Precedence rules decides the order in which different operators are applied. ◦ (2)Associativity rule decide the order in which multiple occurrences of the same level operator are applied.  Table3.8 on page71 shows the summary of C Operators.  for example,  a = i +1== j || k and 3 != x 19
  • 20. THANKS 20