(Original post by winterscoming)
It generally isn't an entry requirement for the majority of universities right now, (that doesn't mean it won't change in the future, but I'd imagine it'll be several years before that happens -- if it happens at all) - although Maths is a requirement for the more prestigious universities, for CS and many other STEM subjects.
There's a difference however between 'need' and 'desirable' / useful. The first year of most CS degrees contain a lot of "catch-up" material for the students who haven't been taught some of the basic problem solving skills needed for later in the course, but it's really intense if you're new to everything. The reason why it's typically much easier to study it at A-level is that you could probably expect the first year of a degree to cover around 75% of the same material that an A-level will cover, but heavily compressed into a single year, with less time to catch up on the stuff you missed in lectures, and more time studying by yourself.
Typically, a Computer Science course at A-Level will cover a broad range of topics - obviously in much less depth than you'll get in a 3-year CS degree course, but there'll be a lot of concepts to get your head around in two years of A-Level CS, for example -
- Ethics and Legal issues (e.g. Data Protection, Privacy)
- Systems Analysis (Analysis of a "real-world" type problem and learning about Requirements, feasibility, design, etc.)
- Data Structures and Algorithms (e.g. trees, lists, search/sort, algorithmic complexity, etc.)
- Hardware architecture (Memory addressing, CPU registers, Fetch-decode-execute, I/O concepts etc).
- Discrete Mathematics (Binary arithmetic, Logic gates, sets, union/intersections, etc)
- Introductory Programming (Typically in a single language at A-Level - probably Java, and a lot of hands-on problem-solving using that language)
- Databases (ERMs/Design, Relational Data, maybe some SQL or MS Access)
- Networking (Ethernet, TCP/IP, Routers, Switches, various networking protocols)
- Project Management (Including general Planning, Software Development Lifecycles, and a large chunk of a 2nd-year Project)
- A little bit of "general knowledge (e.g. computing history - Babbage/Turing, birth of the internet, personal computing, mobile phones, social media..)
- Possibly some Security and Cryptography too
- Maybe even some basic overview of AI and machine learning
- Possibly perhaps some 3D and graphical concepts
There's a few subjects in that list which probably won't get a lot of coverage in A-Level CS, but I wouldn't be surprised if there's at least a couple of chapters on those, and one or two final-exam questions.
The general remit of A-Level computing is to be an introduction to CS and to equip you with some fundamental knowledge and skills. At university many CS students specialise, e.g. some move towards 3D/game programming, others towards AI, some towards Software Engineering, others focus on "pure" CS and logic/theory, some specialise in Databases or Networking, Security, Forensic Computing, Systems Engineering, etc. A-Level CS is supposed to give you the basics of all of those things without diving in too deep, because it's a lot of stuff to cover.
If you give yourself a headstart on all of this stuff at A-Level then your first year at university will be much easier, and you'll be able to use that first year in order to focus on areas which you might have struggled with at A-Level. A lot of people typically struggle with programming when they're starting out, although the total number of marks for actually writing code in A-Level CS is usually relatively low compared to the time spent learning it - this is because CS itself is a much broader topic than just programming, and you can still be successful at CS even if you struggle with or dislike programming (assuming that you don't struggle with the rest of it too..).
In any case, don't forget to think about whether it's something you'll enjoy. I can't emphasise how much of a difference it makes when you're studying something which makes you want to learn more compared with studying something just because you think it would be "weird" not to, or because somebody else is trying to push you into it. It's much easier to motivate yourself to do coursework, to google for information online, read books, etc, when the subject is something which interests you. (I'm assuming that you do enjoy it if you're already thinking of choosing it at Degree level).