In the given sentence, ‘for him should recognise his faults’ must be replaced with ‘for him to recognise his faults’ as ‘should’ is used to indicate obligation and ‘to’ here needs to be used for expressing a purpose or intention. Thus, option (c) is correct.