The correct option is C On
Option C: 'On' means 'at the top or surface of'. It completes the meaning of the sentence: the roses were growing on the rose bush. This word builds a relation between the roses and the bush 'it'.
Hence option C is correct.
Option A: 'In' means 'within' or 'enclosed by'. It indicates that the roses were growing inside the bush; this meaning is ambiguous as roses do not grow inwards. Hence A is incorrect.
Option B: 'Of' indicates an association between two things, particularly that of belonging. Here, the meaning isn't suitable and hence, B is incorrect.
Option D: 'At' refers to a position or a place. It indicates a location, e.g., 'at the beach'. This meaning does not agree with the sentence, and hence, D is also incorrect.