There's a list of printers that support AirPrint, the native mechanism for printing from iOS, here:
HP and Epson also have an app that enables printing to some of their other wireless printers. It's possible other printer manufacturers may provide updates to their printers to make them AirPrint capable or provide app for printing; search the iTunes Store or look to the support resources for your model of printer. Third-party printing apps such as PrintCentral are also available. All such apps have limitations, so check them out thoroughly before you pay for any such app.
For other printers, you can route the printing through your computer. If you have a Mac, Printopia might be worth a look:
Fingerprint is another option that is available for both Mac OS X and Windows system. You could also consider an AirPrint-capable print server. Lantronix makes a couple of models, including one that supports a USB printer: