top of page
PREVIOUS STEP
NEXT STEP
NEXT STEP
PREVIOUS STEP
MY BUTTON

C LANGUAGE

     Operators are the symbol which operates on value or a variable.

 

Operators in C programming

 

  • Arithmetic Operators

  • Increment and Decrement Operators

  • Assignment Operators

  • Relational Operators

  • Logical Operators

  • Conditional Operators

  • Bitwise Operators

  • Special Operators

 

Arithmetic Operators

 

  • +    addition or unary plus

  • -     subtraction or unary minus

  • *    multiplication

  • /    division

  • %  remainder after division( modulo division)

Example of working of arithmetic operators

 

/* Program to demonstrate the working of arithmetic operators in C. */

#include <stdio.h>

int main()

{

int a=9,b=4,c;

c=a+b;

printf("a+b=%d\n",c);

c=a-b;

printf("a-b=%d\n",c);

c=a*b;

printf("a*b=%d\n",c);

c=a/b;

printf("a/b=%d\n",c);

c=a%b;

printf("Remainder when a divided by b=%d\n",c);

return 0;

}

 

a+b=13

a-b=5

a*b=36

a/b=2

Remainder when a divided by b=1

 

Explanation

       Here, the operators +, - and * performed normally as you expected. In normal calculation, 9/4 equals to 2.25. But, the output is 2 in this program. It is because, a and b are both integers. So, the output is also integer and the compiler neglects the term after decimal point and shows answer 2 instead of 2.25. And, finally a%b is 1,i.e. ,when a=9 is divided by b=4, remainder is 1.Suppose a=5.0, b=2.0, c=5 and d=2 In C programming, a/b=2.5 a/d=2.5 c/b=2.5 c/d=2 Note: % operator can only be used with integers.

 

Increment and decrement operators

     

     In C, ++ and -- are called increment and decrement operators respectively. Both of these operators are unary operators, i.e, used on single operand. ++ adds 1 to operand and -- subtracts 1 to operand respectively.

For example:

 

a=5 and b=10 a++;

//a becomes 6 a--;

//a becomes 5 ++a;

//a becomes 6 --a;

//a becomes 5 

 

Difference between ++ and -- operator as postfix and prefix

When i++ is used as prefix(like: ++var), ++var will increment the value of var and then return it but, if ++ is used as postfix(like: var++), operator will return the value of operand first and then only increment it.

 

This can be demonstrated by an example:

 

#include <stdio.h>

int main()

{

int c=2,d=2;

printf("%d\n",c++);//It displays 2 then, only c incremented by 1 to 3. printf("%d",++c); //It increments 1 to c then, only c is displayed.

return 0;

}

 

Output2

2

4

 

  • Assignment Operators

The most common assignment operator is =. This operator assigns the value in right side to the left side. 

For example:

var=5

//5 is assigned to var a=c;

//value of c is assigned to a 5=c;

// Error! 5 is a constant. 

 

  • Relational Operator

Relational operators checks relationship between two operands. If the relation is true, it returns value 1 and if the relation is false, it returns value 0.

For example:

a>b

Here, > is a relational operator. If a is greater than b, a>b returns 1 if not then, it returns 0.

Relational operators are used in decision making and loops in C programming.

  • ==Equal to 5==3 returns false (0)

  • >Greater than5>3 returns true (1)

  • <Less than5<3 returns false (0)

  • !=Not equal to5!=3 returns true(1)

  • >=Greater than or equal to5>=3 returns true (1)

  • <=Less than or equal to5<=3 return false (0)

 

Logical Operators

Logical operators are used to combine expressions containing relation operators. In C, there are 3 logical operators:

  • &&Logial AND

If c=5 and d=2 then,((c==5) && (d>5)) returns false.

  • ||Logical OR

If c=5 and d=2 then, ((c==5) || (d>5)) returns true.

  • !Logical NOT

If c=5 then, !(c==5) returns false.

 

Explanation

For expression,

((c==5) && (d>5)) to be true, both c==5 and d>5 should be true but, (d>5) is false in the given example. So, the expression is false.

For expression ((c==5) || (d>5)) to be true, either the expression should be true. Since, (c==5) is true. So, the expression is true. Since, expression (c==5) is true, !(c==5) is false

 

Conditional Operator

Conditional operator takes three operands and consists of two symbols ? and : . Conditional operators are used for decision making in C.

For example:

c=(c>0)?10:-10;

If c is greater than 0, value of c will be 10 but, if c is less than 0, value of c will be -10.

 

Bitwise Operators

A bitwise operator works on each bit of data. Bitwise operators are used in bit level programming.

  • &Bitwise AND

  • |Bitwise OR

  • ^Bitwise exclusive OR

  • ~Bitwise complement

  • <<Shift left>>Shift right

 

Other Operators

  • Comma Operator

Comma operators are used to link related expressions together.

For example:

int a,c=5,d;

 

  • The sizeof operator

It is a unary operator which is used in finding the size of data type, constant, arrays, structure etc.

For example:

 

#include

<stdio.h>

int main()

{

int a;

float b;

double c;

char d;

printf("Size of int=%d bytes\n",sizeof(a));

printf("Size of float=%d bytes\n",sizeof(b));

printf("Size of double=%d bytes\n",sizeof(c));

printf("Size of char=%d byte\n",sizeof(d));

return 0;

}

Output

Size of int=4 bytes

Size of float=4 bytes

Size of double=8 bytes

Size of char=1 byte

 

  • Conditional operators (?:)

Conditional operators are used in decision making in C programming, i.e, executes different statements according to test condition whether it is either true or false.

 

Syntax of conditional operators

conditional_expression?expression1:expression2

If the test condition is true, expression1 is returned and if false expression2 is returned.

 

Example of conditional operator

#include

<stdio.h>

int main()

char feb;

int days;

printf("Enter l if the year is leap year otherwise enter 0: ");

scanf("%c",&feb);

days=(feb=='l')?29:28;

/*If condition (feb=='l') is true, days will be equal to 29.*/

/*If condition (feb=='l') is false, days will be equal to 28.*/

printf("Number of days in February = %d",days);

return 0;

}

 

Output

Enter l if the year is leap year otherwise enter n: l

Number of days in February = 29

 

Other operators such as

  • &(reference operator),

  • *(dereference operator)

  • ->(member selection operator)

will be discussed in pointer chapter.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

The most common assignment operator is =. This operator assigns the value in right side to the left side. For example:var=5 //5 is assigned to var a=c; //value of c is assigned to a 5=c; // Error! 5 is a constant. OperatorExampleSame as=a=ba=b+=a+=ba=a+b-=a-=ba=a-b*=a*=ba=a*b/=a/=ba=a/b%=a%=ba=a%bRelational OperatorRelational operators checks relationship between two operands. If the relation is true, it returns value 1 and if the relation is false, it returns value 0. For example:a>b Here, > is a relational operator. If a is greater than b, a>b returns 1 if not then, it returns 0.Relational operators are used in decision making and loops in C programming.OperatorMeaning of OperatorExample==Equal to5==3 returns false (0)>Greater than5>3 returns true (1)<Less than5<3 returns false (0)!=Not equal to5!=3 returns true(1)>=Greater than or equal to5>=3 returns true (1)<=Less than or equal to5<=3 return false (0)Logical OperatorsLogical operators are used to combine expressions containing relation operators. In C, there are 3 logical operators:OperatorMeaning of OperatorExample&&Logial AND If c=5 and d=2 then,((c==5) && (d>5)) returns false.||Logical ORIf c=5 and d=2 then, ((c==5) || (d>5)) returns true.!Logical NOTIf c=5 then, !(c==5) returns false.ExplanationFor expression, ((c==5) && (d>5)) to be true, both c==5 and d>5 should be true but, (d>5) is false in the given example. So, the expression is false. For expression((c==5) || (d>5)) to be true, either the expression should be true. Since, (c==5) is true. So, the expression is true. Since, expression (c==5) is true, !(c==5) is false.Conditional OperatorConditional operator takes three operands and consists of two symbols ? and : . Conditional operators are used for decision making in C. For example:c=(c>0)?10:-10; If c is greater than 0, value of c will be 10 but, if c is less than 0, value of c will be -10.Bitwise OperatorsA bitwise operator works on each bit of data. Bitwise operators are used in bit level programming.OperatorsMeaning of operators&Bitwise AND|Bitwise OR^Bitwise exclusive OR~Bitwise complement<<Shift left>>Shift rightBitwise operator is advance topic in programming . Learn more about bitwise operator in C programming.Other OperatorsComma OperatorComma operators are used to link related expressions together. For example:int a,c=5,d;The sizeof operatorIt is a unary operator which is used in finding the size of data type, constant, arrays, structure etc. For example: #include <stdio.h> int main(){ int a; float b; double c; char d; printf("Size of int=%d bytes\n",sizeof(a)); printf("Size of float=%d bytes\n",sizeof(b)); printf("Size of double=%d bytes\n",sizeof(c)); printf("Size of char=%d byte\n",sizeof(d)); return 0; }OutputSize of int=4 bytes Size of float=4 bytes Size of double=8 bytes Size of char=1 byte Conditional operators (?:)Conditional operators are used in decision making in C programming, i.e, executes different statements according to test condition whether it is either true or false.Syntax of conditional operatorsconditional_expression?expression1:expression2If the test condition is true, expression1 is returned and if false expression2 is returned.Example of conditional operator#include <stdio.h> int main(){ char feb; int days; printf("Enter l if the year is leap year otherwise enter 0: "); scanf("%c",&feb); days=(feb=='l')?29:28; /*If test condition (feb=='l') is true, days will be equal to 29. */ /*If test condition (feb=='l') is false, days will be equal to 28. */ printf("Number of days in February = %d",days); return 0; }OutputEnter l if the year is leap year otherwise enter n: l Number of days in February = 29Other operators such as &(reference operator), *(dereference operator) and ->(member selection) operator will be discussed in pointer chapter.

DOWNLOADS
EXAMPLES
SEE ALSO
REPORT AN ERROR
UNION
PREPROCESSOR
STRUCTURE
FUNCTION
ARRAY
STORAGE CLASS
TYPE QUALIFIER
CASE CONTROL
LOOP
DECISION
OPERATORS
VARIABLE
CONSTANT
KEYWORDS
DATA TYPE
PRINTF &SCANF
BASIC

© 2014 by KAILASH LALE.

FAVORITES

FOLLOW US ON

CONTACT ME

Tel: +91 8446823181
Skype: deathreveals
Mail: shareandlearnhub@gmail.com

bottom of page