Most web hosting companies require that you pay for at least one year of hosting upfront. It's harder to find those that allow you to pay month to month. These are the web hosting companies that accept monthly payments:
Godaddy offers monthly payment options on their Deluxe ($8.99/month) and Unlimited ($14.99/month) hosting plans, although they do offer a 50% discount when you choose a yearly plan.
New! Godaddy has a great deal today (Monday, July 6th): 12 months of Economy Web Hosting for just $1/month.
Hostgator offers a monthly payment options on all three of their shared hosting plans: Hatchling Plan ($8.95/month), Baby Plan ($9.95/month) and Unlimited Plan ($14.95/month). The Hatchling plan supports only a single website, while the Baby plan allows hosting of multiple (unlimited) websites on a single account. You can get a first month of hosting for just 1 cent by using a coupon code 1cent or just use their default 20% discount code if you want to pay yearly.
DigitalOcean is one of the best VPS hosts. They have plans starting from $5/month for 20GB of SSD storage and 512MB of RAM. A Virtual Private Server doesn't come with a control panel, web builder, Wordpress or any other software you get with shared hosting. It is a lot harder to setup than a standard shared hosting. You have to install your own Linux distribution, setup the web server and any other software you need. This is only for advanced users.