The reason is pretty simple. Any integer constant is considered as "int" in C and when we operate on "int" we get only "int" (even when we divide). So, 9/5 returns "int". This return value 1 (See behaviour of integer division). But there is another significant issue with the code - "%f" is used and an integer is passed to the function- which causes "undefined behaviour" in C (integer value won't be promoted to float). So, output can be anything.
pl.c:4:2: warning: format ‘%f’ expects argument of type ‘double’, but argument 2 has type ‘int’ [-Wformat=]
arjun@parambara:~/dump$ ./a.out 0.000000