what is the output of following program ?
void main()
{
int i=5;
printf("%d %d %d %d %d ",i++,i--,++i,--i,i);
}
Answers were Sorted based on User's Feedback
Answer / sameeksha agrawal
ya i can tell u abt d ans ..the reasn behind it x++ is
example of post increament in which frstly value of any
variable is prnt thn oprtr r prfrmed and the oprtions r
perfrmd frm right side...
| Is This Answer Correct ? | 7 Yes | 2 No |
Answer / sandeep gupta
Friends, actually the output is compiler dependent. Never
give any specific answer in this type of questions because C
does not provide any format in evaluation order of postfix
and prefix expressions when passed to any functions like
printf() eg. fun1(i++,i) may pass fun1(5,6) in some
compilers and fun1(5,5) in another. So it totally depends on
what compiler we're using.
| Is This Answer Correct ? | 4 Yes | 0 No |
Answer / jalp
Here if i do it manually then i got 44545 but compiler shows
me : 45545
Can any body show the stack process that how it execute
internally,
And also reply through mail.
Thanks.
| Is This Answer Correct ? | 6 Yes | 5 No |
Answer / jalp
That i know .. I want to know the stack process , how it
internally works .. if you elaborate through step then
please explain it ..
Thanks.
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / kavsac
Guys,
There is something, I wanna add on. The above result occurs only in windows, in Unix its 56656
| Is This Answer Correct ? | 2 Yes | 1 No |
Answer / shenbagam
in c its left to right operation will be perfomed by
compiler..... so take this
int i=5;
printf("%d %d %d %d %d ",i++,i--,++i,--i,i);
i=5;
--i=4; after tis the value of i=4 only;
because --i will decrement the value of i, and then return the decremented value.
++i=5; after this the value of i=5;
because ++i will increment the value of i, and then return the incremented value.
i--=5; after this the value of i=4;
because will decrement the value of i, but return the pre-defind value of i. so i=5 before the step na?.....
i++=4; after this the value of i=5;
because will increment the value of i, but return the pre-defined value of i.so i=4 before the step na?...
so only the result will be like 45545 this.......
int i=5;
printf("%d %d %d %d %d ",i++,i--,++i,--i,i);
after the step if u print i; the value must be 5
only......... so the doubt will be cleared aha?............
all the best:):):):).
| Is This Answer Correct ? | 4 Yes | 3 No |
Answer / sameeksha agrawal
no Kavsac u r wrng try again its answer...
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / sameeksha agrawal
sry u r totally wrng cz c is structrd progrmmmng languaga
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / sindhu
Answer:after compilation i got 45545.... but if i consider it from left to right in manual my answer is 55454...
i want clear xplanation for tis program...
| Is This Answer Correct ? | 0 Yes | 0 No |
write a program to Insert in a sorted list
main() { char *cptr,c; void *vptr,v; c=10; v=0; cptr=&c; vptr=&v; printf("%c%v",c,v); }
how to concatenate the two strings
Write a program that find and print how many odd numbers in a binary tree
#define prod(a,b) a*b main() { int x=3,y=4; printf("%d",prod(x+2,y-1)); }
Write a C function to search a number in the given list of numbers. donot use printf and scanf
3) Int Matrix of certain size was given, We had few valu= es in it like this. =97=97=97=97=97=97=97=97=97=97=97 1 = | 4 | | 5 | &= nbsp; | 45 =97=97=97=97=97=97=97=97=97=97=97 &n= bsp; | 3 | 3 | 5 | = | 4 =97=97=97=97=97=97=97=97=97=97=97 34 |&nbs= p; 3 | 3 | | 12 | &= nbsp; =97=97=97=97=97=97=97=97=97=97=97 3 | &nbs= p; | 3 | 4 | = | 3 =97=97=97=97=97=97=97=97=97=97=97 3 | = ; | | | = ; 3 | =97=97=97=97=97=97=97=97=97=97=97 &= nbsp; | | 4 | = ; | 4 | 3 We w= ere supposed to move back all the spaces in it at the end. Note: = If implemented this prog using recursion, would get higher preference.
main() { int i=0; while(+(+i--)!=0) i-=i++; printf("%d",i); }
9 Answers CSC, GoDB Tech, IBM,
main() { main(); }
write a c-program to find gcd using recursive functions
How to access command-line arguments?
Is it possible to type a name in command line without ant quotes?