what is the output for this question:
main()
{
int i=1;
printf("%d%d%d",i,i++,++i);
}

Answers were Sorted based on User's Feedback



what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / 123ghouse@gmail.com

3,2,2;

Is This Answer Correct ?    21 Yes 8 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / rama krishna sidhartha

3,2,2 is the correct output. Because the the associativity
of ++ operator is from right to left.

since i=1

++i = 2(since it is a preincrement operator it is
incremented before printing the value)

i++ = 2(since it is a postincrement operator it is
incremented after printing the value)

i = 3

so it is displayed like 3,2,2.

Is This Answer Correct ?    8 Yes 0 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / r.aruna

answer is 3,2,2
because print the value form right to left.
so,the first one ++i means preincrement.
so,incremented one,2
second one is i++ means postincrement .
it doesn't increment store in same location
but next i means 3.because move to next location

Is This Answer Correct ?    3 Yes 0 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / rameesh ka

answer is
3,2,2

Is This Answer Correct ?    2 Yes 0 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / richa

3,2,2

Is This Answer Correct ?    1 Yes 0 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / girish

1,1,3

Is This Answer Correct ?    3 Yes 6 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / sumalatha

Ans is 2 2 2
because in printf assosiativity is from left to right
first pre increments i that becomes 2 next post increment
is done after printf stmt so prints 2 again, then simple
print i i.e 2again
last post increnent which i becomes 3 but that is done
after printf stmt

Is This Answer Correct ?    1 Yes 4 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / sandeep

1,1,2

Is This Answer Correct ?    5 Yes 15 No

what is the output for this question: main() { int i=1; printf("%d%d%d",i,i++,++i); }..

Answer / sebestiraj

1,2,3

Is This Answer Correct ?    1 Yes 14 No

Post New Answer

More C Interview Questions

What is stack in c?

1 Answers  


Program to find larger of the two numbers without using if-else,while,for,switch

11 Answers   iNautix, Wipro,


wap in c to accept a number display the total count of digit

4 Answers  


What are different storage class specifiers in c?

1 Answers  


What is the scope of local variable in c?

1 Answers  


Why do we use null pointer?

1 Answers  


here is a link to download Let_Us_C_-_Yashwant_Kanetkar

3 Answers   Microsoft,


What is switch in c?

1 Answers  


Explain how can I make sure that my program is the only one accessing a file?

1 Answers  


What is the difference between null pointer and the void pointer?

3 Answers  


How can I change their mode to binary?

1 Answers  


What is the purpose of clrscr () printf () and getch ()?

1 Answers  


Categories