main()
{
int x=20,y=35;
x = y++ + x++;
y = ++y + ++x;
printf("%d %d\n",x,y);
}
Answer Posted / 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 ? | 25 Yes | 7 No |
Post New Answer View All Answers
what do you mean by inline function in C?
Write a program of prime number using recursion.
what are the program that using a two dimensional array that list the odd numbers and even numbers separately in a given 10 inputs values
What is the difference between array and pointer?
How can I write a function analogous to scanf?
Given below are three different ways to print the character for ASCII code 88. Which is the correct way1) char c = 88; cout << c << " ";2) cout.put(88);3) cout << char(88) << " "; a) 1 b) 2 c) 3 d) constant
How do you define structure?
Explain what is a 'null pointer assignment' error? Explain what are bus errors, memory faults, and core dumps?
Who invented bcpl language?
Explain how can I avoid the abort, retry, fail messages?
Are pointers really faster than arrays?
What is malloc return c?
When should you not use a type cast?
largest Of three Number using without if condition?
What is a pointer value and address in c?