In that case, you should create your own factorial function. If you remember the definition of a factorial, it should't be that difficult. Also, it's common to use integers for iterating a for loop. And finally, creating a factorial like that will not support decimals, and therefore, there is no reason to use a float. Your entire code can be rewritten to use integers!
EDIT: By the way... is that main function definition allowed C syntax? I am not very experienced with C, but I highly doubt that is acceptable code.