iPhone development is all in objective C - I really wouldn't go there. You'll end up wrestling with the language for the first half of the term and wrestling with the horrible APIs for the second - it might look cool on the face of it but developing for that thing ain't fun. It's also barely used as a language any more so from an experience perspective there's far better languages you could be spending your time on.
If you want to develop for a phone I'd recommend going down the android route - you'd need to do it in Java but it's MUCH nicer than iphone stuff. You even get a simulator of the phone on your PC and a nice eclipse plugin to make the whole thing streamlined. Of course it's also all free (bar the physical android phone of course!)
Programming something useful and original these days is hard for a programmer that's been on the job for a couple of decades - there's SO much out there already in terms of freeware chances are that if you think of an idea someone's already done it better than you have. I've thought of a lot of things over the years I thought were original but a quick Google has generally proven otherwise!
That said, it doesn't mean it's a waste of time doing things that have been done in one form or another already, experience is always great and you get to put your own spin on things
Here's some ideas:
- From previous posts you seem quite strong on the maths front - what about some form of basic physics engine? It's never going to rival commercial ones in a single term, but you could get some pretty cool effects going by the end of it.
- Something I had an idea for ages ago but never got around to was a secure instant messaging program. So it might work similarly to skype, msn and suchlike on the face of it, but you'd send and receive everything in an encrypted format that'd make it very difficult to sniff conversations and file transfers out. Again I'm not sure how far you'd get in a term but you should be able to make a good start.
I could recommend other things but just so I know I'm on the right or the wrong tracks, are the above suggestions what you're looking for? Also, how long have you been programming and honestly how good would you say you were? I can name some people who could knock out full blown 3D physics engines in a term, I can name others who'd probably take that long to write hello world. I'm guessing your somewhere in between, but knowing where would be helpful