Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...


main()
{
int a=4,b=2;
a=b<<a + b>>2;
printf("%d", a);
}

Answers were Sorted based on User's Feedback



main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / ram

Ans=32

Is This Answer Correct ?    273 Yes 22 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / neha saxena

a=b<<a+b>>2
=2<<4+2>>2

According to precedence Table
1) + operated very 1st, (4+2=6)
2) then<< (left shift), (2<<6, 2 shifted left side 6 times
= 128)
3) and at last >> (right shift), (128>>2, 128 shifted right
side 2 times = 32)

Explanation in Answer No. 5, 6 & 7 are wrong

Is This Answer Correct ?    173 Yes 7 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / satya

yes , the output will be 32....
<< and >> are bitwise operators... not relational ops..
reason:
<< means left shift operator..
>> means right shift operator..
for example.. if we give 2>>1
binary number for 2 is 0000 0010
the operator is right shift..so 0000 0001
for example.. if we give 2<<1
binary number for 2 is 0000 0010
the operator is left shift..so 0000 0100
go through this u will get the output...

Is This Answer Correct ?    79 Yes 10 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / manish soni tagore collage jai

b<<a=2<<4=32;
and
b>>2=1>>2=0
so
32+0=32

Is This Answer Correct ?    47 Yes 5 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / abhishek ranjan

32

Is This Answer Correct ?    37 Yes 3 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / alamuru sreenivasa reddy

2<<4 that means 2 is left shifted by 4 times. then we will get 0010 0000=32 in decimal form. similarly 1>>2 means that is right shifted 2 times we will get 0000 0000=0.. so 0+32=32
i.e answer

Is This Answer Correct ?    24 Yes 10 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / amalu

32

Is This Answer Correct ?    2 Yes 1 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / vignya

size of integer is 8 bits
a=0000 0100, b=0000 0010;
b>>2 becomes 0000 0000 and b<<a becomes 0010 0000
on whole a= 0010 0000+ 0000 0000=0010 0000 =32

Is This Answer Correct ?    1 Yes 0 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / sandeep kumar

Both shift operator has same precedence but associativity left to right so first calculate b>>2=0 then calculate b<<4=32 then add the both result

Is This Answer Correct ?    1 Yes 3 No

main() { int a=4,b=2; a=b<<a + b>>2; printf("%d", a); }..

Answer / aravind

It shows syntax error because relational operators are used only for checking conditions.

Is This Answer Correct ?    8 Yes 23 No

Post New Answer

More C Interview Questions

what is the different bitween abap and abap-hr?

0 Answers   TCS,


Please write me a program to print the first 50 prime numbers (NOT between the range 1 -50)

5 Answers   IBM, KJH,


What is the value of h?

0 Answers  


Is Exception handling possible in c language?

0 Answers   Wipro,


Do you have any idea how to compare array with pointer in c?

0 Answers  


An organised method of depicting the use of an area of computer memory used to signify the uses for different parts of the memory a) swap b) extended memory c) memory map d) all of the above

0 Answers  


What's the best way to declare and define global variables?

7 Answers  


Please provide question papers of NATIONAL INFORMATICS CENTRE for Scientific officer

0 Answers  


When I set a float variable to, say, 3.1, why is printf printing it as 3.0999999?

0 Answers  


how many times of error occur in C

11 Answers  


what is the difference between const volatile int i & volatile const int j;

2 Answers   HCL,


4.A function 'q' that accepts a pointer to a character as argument and returns a pointer to an array of integer can be declared as: A)int (*q(char*)) [] B)int *q(char*) [] C)int(*q)(char*) [] D)None of the Above

6 Answers   Accenture,


Categories