Brenda, first to reinforce what the others said. A Visa is not something you buy like a rail pass. It is official permission to enter a country and stay there for a specified period. When you get a visa you are applying to live there as a temporary immigrant. Hence a lot of legal requirements, paperwork, time and cost. You apply to the government of the country you wish to stay in, and their immigration laws apply.
Some countries agree to not require visas of each other's citizens. For example citizens of many countries (which I assume includes yours, you don't state your nationality) can enter the Schengen Area for 90 days in any 180 without a visa; and in return EU citizens can enter those countries without a visa. Citizens of other countries require a visa from day one.
To get back to your original question. Are you staying the complete 3 weeks in St. Gallen? A curious choice, unless you have friends/family there. Normally I would ask where you are coming from (entering Switzerland from), where you are leaving to and try and fit a circuit of Switzerland around that. But, if you are stuck in St Gallen all the time, you are limited to where you can go as day trips.
If it is friends/family you could ask your hosts for suggestions. In that corner of Switzerland I would suggest:
- Bernina Pass Railway. To Chur, then Over the top of the Alps to Tirano. Back same way. Long day.
- Bodensee (large lake north of St Gallen). Towns: Lindau, Konstanz, Bregenz. Boats on lake. Insel Mainau.
- Stein am Rhein
- Appenzell area. Some nice mountains with cable cars up.
- Luzern (long day trip). Boat and /or trip up mountain.
I have not listed the Berner Oberland, Glacier Express or anything in Romandie (Western Switzerland) or Ticino (south face of the Alps). All too far for a day trip from St. Gallen.
Look up train times on the SBB website: https://www.sbb.ch/en/home.html