Yeah, I've been to London twice. Stayed in a suburb called Belgravia both times. It's a stones throw from Buckingham palace. I would steer clear of the hotels all together and shoot for a bed and breakfast. The place I stayed at on the last trip was
http://www.limetreehotel.co.uk/ pretty decent place and reasonable price for somewhere so close to all the action. Plus it includes breakfast so at least you'll be having one guaranteed meal a day.
The best tips I can give you are-
1. get yourself a weekly travel card. Should cost you about 30 pounds for one which covers zones one and two. If you wish to go further afield then you will need a more expensive card but tbh most of the stuff you'll want to see is in zones 1 or 2. Then just make sure you pick somewhere to stay which is near one of the main Tube stations in those two zones. The travel card also covers the buses in those zones as well but most of the time you'll be travelling by tube.
2. Get to know where the local pret a porter store is. Those places are awesome for a cheap feed on the run.
3. Go to a place called "tkts" in Leicester square. You will get really cheap west end theatre tickets there as its the official last minute ticket outlet. When we were there a few years back we saw the Lion King for half price and Avenue Q for about a third of the normal sales price.
Other than that, here are a few things to expect-
1. The room you get in whatever hotel you stay at will be tiny.
2. Don't expect a fridge in your hotel room.
3. The tube is a free for all. Especially at peak hour. Don't be afraid to push people around in order to get into a train as people will certainly push you in and out of them.
4. Very little is free to do there or even cheap. Most things worth seeing or doing will cost you an arm and a leg.