<p>gosh I wish I had this thread back in the days when I chose majors. I had the same question too. But now I know. I chose EE for undergrad and CE for grad.</p>
<p>These 3 (CS, EE, CE) all deals with computers one way or another. So if you want to study something related to computer. Different schools has different "concentrations" for their programs.</p>
<p>For CS, it is highly concentrated on software aspects and other areas like AI, programming, some school as multi media / graphics under CS, database... </p>
<p>EE & CE are very much related. EE focus more on hardware, semiconductors, microelectronics, VLSI, controls, automations, electrophysics, signals & systems, power ... where as CE focus more on hardware of only computers (again this could vary schools by schools). Many people thought electrical engineers fix / deal with electricity / power only. That is stupid! there are branches in EE that you can go into.</p>
<p>For undergrad, I think EE is better than CE because you learn more general areas, and there are more jobs for EE than CE (anyone from EE can find a computer related job, even software, easily but not all CE can find jobs in other EE areas like electrophysics, multimedia signal & systems ...) So in general, if you're an EE, you can get hired to do CE stuff too. The starting salary for 2005 are pretty much the same for CE and CS (EE averages like $2000 higher).</p>
<p>For the courses required, EE requires the most number of courses out of all majors in most highly ranked school. Then CE, then CS. You can double major in CS & math and still have about the same credits as an EE.</p>
<p>If ur into software, go for CS because it teaches you more. If ur undecided, go for EE because there are so many different concentrations under it. Once ur an EE you can always go for CE. At my school 75% of the courses of EE and CE are the same.</p>