#include<stdio.h>
int main()
{
int i=2;
int j=++i + ++i + i++;
printf("%d\n",i);
printf("%d\n",j);
}
Answer Posted / sanjay
i = 5
j = 11
It is because during the first pre-increment "++i" the compiler gets the value from the memory, increments it and stores it in the memory ie now i = 3. During the second pre-increment "++i" the compiler again gets the value from the memory, increments it, (value in the memory was 3) and so the incremented value is stored again in memory ie i = 4. during the post increment, the value from the memory is received and used in the statement ie) (the whole final statement looks like this ->>( 3 + 4 + 4) ) and then value of i is incremented and stored in memory. thus finally the value of i is 5 and j is 11.
| Is This Answer Correct ? | 2 Yes | 0 No |
Post New Answer View All Answers
Explain modulus operator.
Why void main is used in c?
a sequence of bytes with one to one corrspondence to those in the external device a) sequential addressing b) address c) byte code d) none
Explain what will the preprocessor do for a program?
Describe newline escape sequence with a sample program?
What is boolean in c?
What is the use of extern in c?
What is c standard library?
What does 4d mean in c?
How do you override a defined macro?
what are the advantages of a macro over a function?
Can we compile a program without main() function?
What is spaghetti programming?
What are enumerated types?
Array is an lvalue or not?