In C, a return statement causes the function to exit immediately, even if the return type is void. The 'return 5;' is valid - the 5 is simply discarded. The printf(" World") after return is never reached because execution terminates at return. Output is 'Hello'.