I can easily tell you why rockets have fins, and you will probably believe me, but as my Physics teacher always tells us, you learn better by doing.
Take a cylindrical object (pencil, pen, deoderant can) and toss it into the air so that it will rotate end over end. You will notice that regardless of how you throw the object, vertically or horizontally, hard or easy, it will always rotate about its center. If a weight is attached to one end of the stick and it is again thrown into the air it will rotate about a new location. This time the point about which it rotates will be closer to the weighted end.
Rockets act the same, fins provide stability during the flight, fins keep a rocket straight on its intended trajectory. If there were no fins, it would soon begin to flare and falter wobble and toss due to the aerodynamic forces reacting physically with the rocket.
The minimum number of fins you can have is three, however many homemade rockets have four, Why? Aligning four fins is much easier than aligning three. However the advantages of three fins are overwhelming. It reduces the drag coefficient by 25%,(air friction pushing down)which is a pretty big factor. The only negative aspect of having a three finned rocket is that the initial setup is harder.
Construction in progress. Codes are being thrown at the screen as rapidly as possible