fun(int x)
{
if(x > 0)
fun(x/2);
printf("%d", x);
}
above function is called as:
fun(10);
what will it print?
}
Answers were Sorted based on User's Feedback
Answer / mahesh patil
Only answer 1
answer 4
answer 7 are correct others are wrong..
If you are confident on your answers please check once then
write a post.
Correct Answer: 0 1 2 5 10
This will print in reverse order because, This is a
recursive call, Every time a function is called the values
are stored in stack/stack is created. when x value reaches
0 then it will return. So stack is LIFO order, So it will
print the values in reverse order.
| Is This Answer Correct ? | 9 Yes | 0 No |
Answer / gg
0 1 2 5 10 is the answer. But can anybody explain why the
printing order 0 1 2 5 10. Why not 10 5 2 1 0 ? please...
Is it depends on stack allocation??
| Is This Answer Correct ? | 5 Yes | 0 No |
Answer / code
Guest & Raj is correct.......
Please don't post the wrong answer if u r not clear about this
| Is This Answer Correct ? | 4 Yes | 1 No |
Answer / amit
All are incorrect. Please try it on a machine and see...
The answer is 012510. Please not that it is 0 1 2 5 10 but
without spaces.
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / hemavathiarun
Hi all,
since the code is calling the same function with different
values,it's not at all possible to move to printf statement
until x becomes < 0
so only when the compiler gets the value of x as 0 the loop
will be stopped.
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / ashwin kumar
hi Gg
answer is 0 1 2 5 10
this not stack prlm dear
here printf is after the function call dear so it is
printing 0 1 2 5 10
if u wnt to see 10 5 2 1 0 as output plz keep printf
function before function call that is
fun(int x)
{
if(x > 0)
printf("%d\n", x);
fun(x/2);
}
but output will be 10 5 2 1 only on 0 is printed
this above new code will give segmentation error in netbeans
thank u dear
| Is This Answer Correct ? | 0 Yes | 0 No |
what is the difference between arrays and linked list
26 Answers MAHINDRA, Tech Mahindra, Wipro,
write a program in c to find out the sum of digits of a number.but here is a condition that compiler sums the value from left to right....not right to left..
Should I learn data structures in c or python?
what r the cpu registers r ther?
with out using main how to execute the program?
why array index always starts from zero??
is it possible to change the default calling convention in c ?
What's wrong with "char *p = malloc(10);" ?
SIR PLS TELL ME THE CODE IN C LANGUAGE TO PRINT THE FOLLOWING SERIES 1 1 2 1 1 2 3 2 1 1 2 3 4 3 2 1 1 2 3 2 1 1 2 1 1
In which mode we open the file for read,write and append also in c ? a)W b)w+ c)r+ d)a
C program execution always begins with a) #include b) comment (/*-------*/) c) main() d) declaration instructions
program to find which character is occured more times in a string and how many times it has occured? for example in the sentence "i love india" the output should be i & 3.