What you would be qualified for as a CS graduate depends primarily on the specific areas of focus of the CS degree path at your school.
I'll give examples from my experience. At the university where I got my degree, the Computer Science major was offered by the Uni's Engineering school. The degree involved high amounts of electrical engineering, circuit design and low-level programming, in addition to courses on higher-level concepts like operating systems, O-O programming etc. It trained people to be "computer scientists"; the person who received such a degree would be a fine catch for a company like TI, Honeywell or Lockheed that specialized in the development of new computer hardware, or otherwise sought to do new things with computers as electronic machines embedded physically in larger projects.
By contrast, the Management of Information Systems (MIS) major was offered by the Business school. It taught similar math, OS and programming courses, but was much more highly focused on tools and technologies that would be used by an "end-level programmer". Instead of C++ and assembly language, MIS students were taught Java and the .NET languages. Instead of digital design and electrical engineering, students learn database design and OOA&D. Instead of calculus and matrix algebra, students learn accounting, stats and finance. Project management is common to both, but taught differently, and emphasized more in the MIS track. In short, MIS prepares graduates for jobs in tech firms that use computers "off-the-shelf" as a basis for their end-user products, and deals heavily with the concepts more than the specifics.
Which one's more useful? Well, I got an MIS degree, and my brother got the CS degree from the same school. We got the same type of job in the field, doing end-user .NET web and winforms programming, which is IMO closer to the MIS side. We're both doing well despite the current economy.
As far as opportunities, what you do with a degree in programming is completely up to you. I can say two things with absolute certainty; first, there is not a single field of business in which computers do not play a part. Second, 95% of the benefit of computers to most companies is in areas of productivity/clerical (MS Office-type apps), resource management (accounting/POS software), and mobile communication and marketing (web applications). If you want to be challenged (and make the BIG bux), you need a job in that 5% where computers are central to a company's business model in some other way, usually involving a much higher understanding of computers at a much lower level. Those areas are generally:
- Games/graphics (yeah, it's producing an end-level product, but it also pushes the limits of computer hardware and computational math)
- Robotics (computer/machine interfaces usually involve a lot of low-level programming)
- Communications (these guys implement the new codecs for A/V transmission, as well as the protocols behind the network communications we all take for granted, from the hardware level up)
- Framework Development (Eric Lippert's job; while you and I write programs in the .NET Framework, he's writing the .NET Framework itself, and probably making more than you and I put together)
- Hardware Development (this goes down not just to the bits and bytes, but the circuits that transmit and store them.
All of these jobs require the skillset more toward the CS side at a masters' level.