What state are you in? Most states have at least one good public university, and these are generally fairly easy to get into and fairly cheap (if you're from in-state).
If there's not a good one in your state, try one in a nearby state. It'll be more expensive and harder to get into, but still generally cheaper/easier than a private school. I can personally recommend UNC-Chapel Hill (nice campus, small town, good mix of social+intellectual life) and Georgia Tech (great CS professors and students, although poor social life).
Also, as others have said, definitely seek out and apply for as many scholarships as you can. There are plenty available and you're almost guaranteed one if you apply to several. Especially focus on scholarships which are special to your situation (minority, athletics, service, etc).
I was just going to say, "Pick the best public university in your state." But you beat me to it.
So, I'll add that admissions are usually nicer to in-state students (the UT system in Texas is extremely generous about who they admit from state high school graduates, for example, and cheap to attend for Texans). Since the OP has revealed he's in California, he's even better placed, though I think state schools are significantly more expensive in CA (but what isn't?), but the quality of education available at some state schools is excellent.
UC Davis and Berkeley are both very well-regarded in comp sci (as are many others). I know that a large number of UC schools are on Google's "will hire from" list of universities (as is the previously mentioned UT Austin).
I graduated from Davis in 06 as a computer science and engineering student. I would rate the faculty very highly, they are the right combination of professor and teacher. I worked with them as a student and a researcher and enjoyed it.
I wouldn't rate my classmates so highly. My class was the last of the surge created by the first bubble.. and I felt everyone was in the major to please their parents and secure a boring but safe future in engineering. There were certainly some exceptions, but they were just that. I felt these people lowered the difficulty of the classes. I learned a lot more when I found the smart ones and worked on projects with them outside of the curriculum.
Anyway, the CS dept has had a big drop in enrollment now because it has still been 4-5 years since CS degrees were not highly in demand. I assume the classes are of a higher quality right now as the people in the classes have purer motivations. And I assume the quality of students will drop again as the second surge hits.
Interesting. I just know a few of the Summer 07 (I think?) YC groups came out of Davis--and they all seem really smart and capable. YC doesn't care about schools (much) and smart and capable people can come from any school, so this is probably not meaningful.
My original comment may have been a bit harsh. I'm sure there's a lot of good people both in the faculty and in the student body. I actually don't know much about the CS department at all, so by all means listen to somebody else's opinion over mine.
If you're in California, definitely take a hard look at the UCs: in-state tuition is very reasonable, and the schools are among the best on the country for CS. Generally, the highest ranking UCs are: Berkeley, UCLA, UCSD, UCSB. All four of those schools tend to be in the top 30 for CS.
I went to a public university in my state (NC) and a top 20 public CS grad school - so I can recommend them. I have also worked with a lot of folks from all the other top CS grad programs across the country.
The thing I have found that is different with the folks who went to undergrad at some of best schools, like MIT, is that they spent more time focused on their studies than I did. And I'm saying this having been top of my class in both undergrad and grad school. So I'm not sure if that says something about public schools, liberal arts, or the kinds of people who target MIT. Probably all of these. In any case, I think you can get the same level of education at public schools if you're willing to put in a lot of your personal time. If it turns out that you don't want to be so hard-nosed about it, then I think you'll find a lot of cool things to do at a public school.
California! You have a TON of options. Stanford (free tuition!) and Berkeley are obviously two of the best in the world. UC San Diego and Caltech also have awesome programs, and I hear nice things about the sciences at UC Davis and UC Santa Barbara. Get yourself a college guide and check these places out!
As far as Berkeley "being an option", you realize you just named a school that most people rank tied for first in the world, right? The "B" in "BSD" stands for "Berkeley".
If there's not a good one in your state, try one in a nearby state. It'll be more expensive and harder to get into, but still generally cheaper/easier than a private school. I can personally recommend UNC-Chapel Hill (nice campus, small town, good mix of social+intellectual life) and Georgia Tech (great CS professors and students, although poor social life).
Also, as others have said, definitely seek out and apply for as many scholarships as you can. There are plenty available and you're almost guaranteed one if you apply to several. Especially focus on scholarships which are special to your situation (minority, athletics, service, etc).