main()
{
int i = -3,j=2,k=0,m;
m= ++i || ++j && ++k;
printf("%d%d%d",i,j,k,m);
}
Answers were Sorted based on User's Feedback
Answer / harend
results :
i=-2
j=2
k=0
m=1
First, the '&&' part is to be considered over '||'.
AS follow: m = ++i||++j&&++k (is given)
what ever be the result of (++j&&++k),the value of m =1
,since the new value i= -2 (i.e a non zero value so taken as
true or 1)
so,
1||(++j&&++k) will always be true, that is 1 . compiler
ignores ++j ,++k and only consider ++i.
thank you !
| Is This Answer Correct ? | 25 Yes | 6 No |
Answer / ep
After the execution of the m evaluation the variables can be:
i = -2
j = 2
k = 0
m = 1
All of of this is because compilers do NOT completely
evalute expressions if they can short cut the evaluation.
Anyway, this is very bad programming.
| Is This Answer Correct ? | 18 Yes | 10 No |
Answer / mayur dharmik
printf("%d%d%d",i,j,k,m);
it has only 3 %d.
So, it will print only 3 value.
| Is This Answer Correct ? | 9 Yes | 2 No |
Answer / mayur dharmik
output
-220
i.e,
i=-2, j=2, k=0.
it will print only 1st three value.
| Is This Answer Correct ? | 5 Yes | 2 No |
Answer / nidhi yadav
here logical && has higher priority than ||. so the block
(++j&&++k)will execute first and ans of this will be (3&&1=0)
since value increment first due to preincrement operator. now
the block(++i||0)will execute as (-2||0=1) since || opertor always gives true value except(0||0=0).
thus ans will be i=-2,j=3,k=1,m=1
| Is This Answer Correct ? | 2 Yes | 7 No |
what is the use of #pragma pack, wer it is used?
How do you use a pointer to a function?
What is sizeof int?
why in C,C++'s int size is 2 byte and .net(c#) int Size is 4 byte?
what is call by value and call by reference
What is 02d in c?
What are the types of bitwise operator?
How does struct work in c?
what is the advantage of software development
Explain what is the benefit of using an enum rather than a #define constant?
How to write a code for random pick from 1-1000 numbers? The output should contain the 10 numbers from the range 1-1000 which should pick randomly, ie ,for each time we run the code we should get different outputs.
/*program to calculate hra,da in salary if salary less than 10000 then hra15%,da13% otherwise hra20%,da18%/*