You do not need to worry about the exact answer for this. As the exam doesn't test our mathematical skills. We knew that when we convert a large integer (which has the value out of its range -32768 to 32767)to float the value is going to change slightly.And when we convert the float to integer for the same it is going to loose its precision.(Narrowing conversion).
When we look at the answers for the above question:
1) It will print 0.
2) It will not print 0.
3) It will not compile.
4) It will throw an exception at runtime.
5) None of the above.
we knew that definitely it won't print "0" as the number is large, the conversion changes the number slightly, eliminate 1st option, the code is perfectly fine, so eliminate 3 and 4 th options. You need to choose from options 2nd and 5th.
You knew that if code compiles and doen't throw runtime exception, it will print some number and in this case it won't be "0".so please select 2nd as your answer. (I guess this question is kind of logical thinking question rather than pure technical questions).