Yes - but the simplest thing to do is try it. Write a simple C function, and call it with your values. See what it does, by following the code execution in the debugger.
To answer your supplementary question, "No" - it will not loop forever if you pass it a negative value, because the test
if (n<0)
terminates execution of the function on a negative value instead of recursing any further.