Last year we went to Barcelona - booked 2 flights for £100 with easyjet and stayed just over from Las Ramblas in a tourist hotel (it cost us £300 for 5 nights B&B)
It was a really great break. We actually went because we wanted to go to the Spannish GP but we have a few days either side to do some sightseeing and it was fab. There is loads to see and do - there's a beach, great culture, fab food and we'll defintiely go back. I'd recommend the Time Out guide to Barcelona - in there you'll find some great info on restaurants to fit all budgets and it's sorted by area so can you pick places near to you. We had two exceptional meals using their recommendations. I would avoid eating in Las Ramblas - we ate there one lunchtime and found it to be overpriced and the service isn't very good.
Of the other destinations you mention we've been to Rome and when we went it wasn't cheap to get to - however I think one of the lowcost carriers go there now so it might be worth looking around. Price wise - if you eat around the main tourist places it can be expensive. My advice is to seek out thoes places up side streets etc. Another good tip is the local bakeries that the Italians use - they are really cheap and sell some great pastries and paninis. It's a lovely city and I threw a coin in the Trevi fountain hoping to go back at some point.
We are trying Prague in May this year. Again that cost us just over £100 for 2 flights and the hotel is £320 for 4 nights B&B in a delux room. Some of the hotels are really cheap but we decided to stay in a more traditional inn in a better room class as some of them can be a bit sparsely furnished.
Hope that helps a little,
Dawn
P.S. - you may get a better response if you post in the city break forum.