First, any company bigger than 20 people is going to have an HR person who is screening resumes. That person has no technical background at all. They don't know a good programmer from a good accountant from a good coffeemaker. What they do have is a buzzword bingo card. And they run through your resume, looking for the right buzzwords, and the ones they find get a checkmark, they add up the checkmarks and put the resume into one short stack, to send on to the manager that's actually hiring, and the big stack of rejects.
So you need to get a buzzword compliant resume. If you know C# put that on there. If you know SQL Server, or Oracle, or whatever else, put that on there. Do you know how to program microcontrollers? Put that on there. Break every convention you were taught in writing classes, and put a big list of all of the technologies you know using all the industry jargon you can. This isn't to make you look like a smart insider. This isn't for anyone's benefit but the little buzzword bingo player. You should have a collection of a half dozen or so targeted resumes you can send out, each one tailored to a certain industry and technology set with appropriate buzzwords for each.
That sounds really really cynical. It isn't. It's absolute truth. You must have the skills they're looking for, but more importantly they must be clearly presented somewhere so a receptionist (that's who did it at my first job) can figure it out. When I was looking for a job getting out of school, I went fully buzzword compliant and that's what got me there. Managers do not have time to go through 300 resumes to find the 5 people they want to interview for 2 positions. They delegate that. Delegation is what managers do.
Second, if you don't have the buzzwords (C#, Java, .Net, SQL Server, etc) get them. Find an internship. If you're getting ready to graduate and you didn't do that, you screwed up. Internships are how you get jobs. Or summer jobs. Or part time jobs. Or something where you can learn something practical in a real office environment. You still have time. Go pick up a "Learn C# in 30 days" book and figure it out well enough to write some code and make sure it's prominently displayed on your resume.
Third, know your market. If you tried to apply for a java programming job here in Kansas City, you'd be out of luck because Sprint's been laying off Java programmers by the bucketload. But trying to get a job using C# or VB.Net or as an entry level systems person on Windows Server would be pretty easy.
Finally, just remember, it does get better. The first job is the hard one to find. The rest get easier as you meet people and develop contacts. That's the key really. After you do your first blind job hunt, you never have to do it again, because you'll know someone. That means you need to build a reputation as someone who's really good at doing what they do while being extremely easy to work with and get along with.
I know it sucks, but really it's pretty much the last thing that sucks.