main()
{
int x=20,y=35;
x = y++ + x++;
y = ++y + ++x;
printf("%d %d\n",x,y);
}




Answers were Sorted based on User's Feedback



main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / jaya prakash

57 94


{x=y++ + x++;}
equal to
{
x=y+x;//35+20
x++; //56
y++; //36
}


y=++y + ++x;
equal to
{
++y;//37
++x;//57
y=y+x;//37+57
}

So x=57
y=94

Is This Answer Correct ?    160 Yes 32 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / preethi

57
94

Is This Answer Correct ?    86 Yes 25 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / manju

while calculating the x value,x & y values are post
incremented.So the values of x & y are added and then
incremented i.e. x=56,y=36
while calculating the y value,x & y values are
preincremtned,so x & y values are incremented and then
added i.e. x=57,y=37.
so x=57
y=57+37=94.

Is This Answer Correct ?    52 Yes 12 No




main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / bala

56 93.

I will rewrite the above program for ur understand.

int x=20,y=35;
int x1,y1;
x1=y++ + x++; //this line y=35 and x=20 before assign the
value to x.
x=x1; // Value of x1=55, y=36 and x=21.
y1=++y + ++x;//this line y=37 and x=56 before assign the
value to y.
y=y1;// Value of x=56, y=37 and y1=93.
Finally x=56 and y=93

Is This Answer Correct ?    28 Yes 8 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / joseph

Here this should make it easier for you...

Problem_________|___Solution__|

int x=20, y=35; (here the values of x,y are apparent.)

x = y++ + x++; (x=y+x+1) or(x = 35 + 20 + 1)x = 56
But; you incremented y, its now = 36

y = ++y + ++x; (y =(y+1)+(x+1)) or(y=1+36+1+56)y = 94
This is the second time you incremented
x so it is now = 57.


The reason that you are getting different increases
for x and y is that when you use statement(x=x++) you are
first stating that x is = to x, and then 'increment x.
when you use statemnt(x=++x) you are first
stating 'increment x, then that x is = to x.

look at the code and description in the chart below.

table:
code = meaning;
int x=2
int y=2
-------------------|
(x=x++) = "x = x, x + 1" (increment happens after)
(x=++x) = "x = (x+1)" (increment happens before)
(x=y++) = "x = y, y + 1" (increment happens after)
(x=++y) = "x = (y+1)" (increment happens before)

if you want to add y to x and then increment y use this
statement:

x+=y++

if you want to increment y and then add it to x use this
statement:

x+=++y

Is This Answer Correct ?    24 Yes 7 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / rohit

57 94

Is This Answer Correct ?    33 Yes 18 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / valli

x=57
y=94

Is This Answer Correct ?    29 Yes 14 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / lucky

correct answer is 57 94

Is This Answer Correct ?    15 Yes 11 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / chandrasekhar

56 93

Is This Answer Correct ?    5 Yes 2 No

main() { int x=20,y=35; x = y++ + x++; y = ++y + ++x; printf(&q..

Answer / ledia

The program results in an undefined behaviour. You're wrong
if you have a certain answer. Learn more on the wikipedia
http://en.wikipedia.org/wiki/Sequence_point

Is This Answer Correct ?    4 Yes 4 No

Post New Answer



More C Interview Questions

Given a single Linked list with lakhs of nodes and length unknown how do you optimally delete the nth element from the list?

1 Answers   Oracle,


Write the test cases for checking a variable having value in range -10.0 to +10.0?

0 Answers   Bosch,


a memory of 20 bytes is allocated to a string declared as char *s then the following two statements are executed: s="Etrance" l=strlen(s); what is the value of l ? a.20 b.8 c.9 d.21

4 Answers   TCS,


simple program of graphics and thier outpu display with a want what is out put of graohics in c language

1 Answers   CSC, HCL,


write a pgm to print 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1

3 Answers  






Write a simple program to find the size of different basic data types in C.

3 Answers  


How we can set and clear bit in a byte using macro function?

2 Answers   L&T, Samsung,


How to convert a binary number to Hexa decimal number?? (Note:Do not convert it into binary and to Hexadecimal)

1 Answers   Subex, iLantus,


main() { int i; printf("%d",scanf"%d",&i))//if the input is 12 24 34 then wat will be the output }

2 Answers  


int main() { int *p=new int; *p=10; del p; cout<<*p; *p= 60; cout<<*p; } what will be the output & why?

4 Answers   TCS,


what is meant by the "equivalence of pointers and arrays" in C?

3 Answers   Satyam,


Write a C/C++ program that connects to a MySQL server and displays the global TIMEZONE.

0 Answers  






Categories