I would say that you could use RobotC, EasyC, C/C++, ASM or Java. You may need some knowledge in CAD and Autodesk as well. You may have to learn wiring, sensors, and few other things depending on what you want to do, although there are ways of programming robots without creating them or typing code.
Here is a few links you may find interesting.
C/C++, Java, CAD, Autodesk, ASM
http://www.usfirst.org/roboticsprograms/frc/building-a-robot
http://www.youtube.com/watch?v=Y-afnY32RrY
https://decibel.ni.com/content/community/first/frc?view=all#/?tagSet=1000
http://youtu.be/VLQhX0nZV6I
RobotC
http://www.robotc.net/
http://www.youtube.com/watch?v=06uJUMAAGys
LegoMindstorm (No programming required)
http://www.youtube.com/watch?v=AzRRulYvVdY
http://stemcentric.com/nxt-tutorial/
EasyC - Vex Robotics
http://www.youtube.com/watch?v=ZC_IzM9frGo
http://www.youtube.com/watch?v=LPO1BFTCBUI