When you get a job in the real world, you will figure out really quick how little you know. As long as your getting an entry level position, your co-workers can help point you in the right direction. When I first got a job as a developer, I felt extremely under-prepared. One thing to keep in mind is that you also need to get learn their project management systems and source control stuff, as well as time to learn the code as well. Even Senior developers take a bit of time getting settled in.
I personally feel like I come up with some great logic, but code it poorly. Another thing to note... it pretty much takes re-writing the code 3 times before its right. You can write a simple console application for blackjack, and while your coding this you realize there was a better way to do this. Once you finish, you go back and rewrite these sections. Even when you go back and re-write it, another part of your code might make you realize you needed to change the architecture a bit, and so you go back and rewrite it again. This applies to everyone.