there are many ways to finger each chord...Often its just a matter of experimentation...Sometimes i will change the exact way i finger based on what chord comes next, and that just comes with experience.... for example...If you play C (0003) with you ring finger, which is my default, it makes transition to F and G easy. But if you play it with your index finger, 1st position F(2010) and G(0232) are more difficult to change to, yet E (4442) and F (5553) are easier...To limit yourself to one particular method often limits your ability to progress. As for me, the two more difficult chords D, and E i think are best played with (D) Middle finger G string, ring finger C string, Pinky finger E string. this is likely the most awkward at first but is the best position for your hand when wanting to change chords. To make the E do the same thing but bend your index finger in for the A string 2nd fret....
Keep on trying at it and you'll figure it out....just takes time, we've all been there. Oh and don't forget barring...i'm sure they are plenty of articles about it, but it allows you to cover strings at the same fret without as much effort...helpful with Bb C# and many others.