#include<stdio.h>
void main()
{
int i=1;
printf("%d%d%d",i++,++i,i);
}

Answers were Sorted based on User's Feedback



#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / medo

221...
In printf() function compiler calculates the values from
right to left,but prints the values from left to right.

Is This Answer Correct ?    28 Yes 13 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / abhishek singh

221 is correct answer

Is This Answer Correct ?    12 Yes 5 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / samrat

The Ans is: 2,3,3

In printf() the evaluation starts from right and the
printing of the values start from left.

Coming from right, the initial value is 1, after that ++i
will increment the value of i to 2. Now i++ will not be
incremented now. It will be incremented after the first "i"
is printed.

So we print 2 first, then the value of i is incremented to 3
(by executing i++). So for the other two i's the value will
be 3. So the ans is 2,3,3

Is This Answer Correct ?    13 Yes 6 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / venkat

Basically in printf the values are calcualted from right to left...and the output is displayed from left to right.
so the output will be
221
first one will be printed
then one will be incremented by one and made as two..since it is a pre increment and will be printed..
then the value now is 2..so it will be printed then it will be incremented { post increment }..


good question..
a typical example for working of Printf

Is This Answer Correct ?    1 Yes 0 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / prem_mallappa

The right answer is : Unpredictable/implementation defined behaviour.
Why? : get a C faq's book or visit online at c-faq.org

Reason: variable 'i' is changed more thane once between 'sequence point', a sequence point is a semicolon in 'C'. in such cases the result is unknown or compiler dependent.

Is This Answer Correct ?    1 Yes 0 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / ricky/sonu dobriyal

I AM RICKY DOBRIYAL
THIS ANSWER IS DEFINETLY CORRECT
221
BECAUSE COMPILER CALCULATE RIGHT TO LEFT

Is This Answer Correct ?    2 Yes 1 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / medo

what is the the output....?
and why?

Is This Answer Correct ?    5 Yes 5 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / mementomori76

answer is 221, but you shouldn't use void main
it's better to use int main()

Is This Answer Correct ?    0 Yes 0 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / rakesh

121
the first value is post increment(++i) and so at the first compilation the value is not incremented.. the next value is pre increment(i++) so it is incremented at the first compile. the third is the same as the input.

Is This Answer Correct ?    0 Yes 0 No

#include<stdio.h> void main() { int i=1; printf("%d%d%d",i++,++i,i); }..

Answer / shahenshah07

its o/p:2 2 1
cause when parameter pass to any f'n its stored in a
stack(lifo).dats y its print i,++i;i++ respectively.

Is This Answer Correct ?    0 Yes 0 No

Post New Answer

More C C++ Errors Interview Questions

A sample program using data structure? what is file handling?

0 Answers   TCS,


#include"stdio.h" #include"conio.h" void main() { int a; printf("\n enter a number:"); scanf("%c\n"); getch(); }

12 Answers   HCL,


Assume that the int variables i and j have been declared, and that n has been declared and initialized. Write code that causes a "triangle" of asterisks of size n to be output to the screen. Specifically, n lines should be printed out, the first consisting of a single asterisk, the second consisting of two asterisks, the third consistings of three, etc. The last line should consist of n asterisks. Thus, for example, if n has value 3, the output of your code should be * ** *** You should not output any space characters. Hint: Use a for loop nested inside another for loop.

2 Answers   HCL,


How to reverse a linked list without using array & -1? Thank you.

2 Answers   Access, Satyam,


I am using Qt 5.6 during compilation it stops and gives error about Qmake The process "C:QtQt5.6.35.6.3msvc2015_64inqmake.exe" crashed. Error while building/deploying project untitled1 (kit: Desktop Qt 5.6.3 MSVC2015 64bit) When executing step "qmake"

0 Answers  






Declaration of Cube Guys please help me.. Is this a right way to declare cube.? If i Compile it. It Says: Cube undeclared what should i do? Please help \thanks in advanced #include<stdio.h> #include<math.h> #include<conio.h> main( ) { float x,y; while(x++<10.0) { printf("Enter Number:"); scanf("%d", &x); y = cube(x); printf("%f %f %f \n", x,pow(x,2),y); cube(x); } { float x; float y; y = x*x*x; } getch(); return (y); }

2 Answers  


char* f() return "hello:"; void main() {char *str=f(); }

1 Answers  


Answering Yes or No in C++...using only stdio.h and conio.h..........help me please...? here's must be the output of the program: Screen A Exam No. items Score 1 20 20 2 35 35 Another Entry? [Y] or [N] : Screen B: Record No. Student's Name: 1 Fernando Torres 2 Chuck Norris Note: if you press Y, the program must repeat the procedure in screen A, then if N, the program must proceed to the screen B....Please Help me out............

1 Answers  


write a profram for selection sort whats the error in it?

2 Answers  


loop1: { x=i<n?(i++):0; printf("%d",i); exit(x); continue; } Error- misplaced continue. Doubt-1.will the exit(x) be executed for all values of x 2.will this statement go out of the program.

5 Answers   CMC,


How to develop a program using C language to convert 8-bit binary values to decimals. TQ

1 Answers   Amazon,


void main() { int i=1; printf("%d%d%d",i,++i,i++); } Cau u say the output....?

24 Answers   HCL,


Categories