Self-Correcting Large Language Models: Generation vs. Multiple Choice