Courses aren't standardised, but the first year for the course I'm on (at York):
1. you learn to program in Python and Java
2. learn fairly comprehensively the evolution of hardware (from the Difference Engine (a mechanical computer) up to current transistor based designs.
3. maths, all applicable to CS in some way. Started off with logical predicates, moved onto state machines, then more "pure" mathematics involving partial differentiation, matrices, eigenvalues etc.
4. Theory behind programming and algorithms, (effectively more maths) looking at how to store information (arrays, binary search trees, hash tables), complexity (Big O notation), sorting algorithms, path finding algorithms.
5. I doubt most courses do this, but looking at electronics, how to design circuits, and eventually implement/build them.(involves a bit of raspberry pi programming) This is so you have the option to work with micro controllers in later years.
6. There was a module on how to document and design a product for a user, it was not particularly computer science-y but I can see that they want to make us employable by the end so it has to be taught at some point.
@William Pitt
Programming and Computer Science are not the same thing. I think this is why a lot of people have the wrong ideas about the course. If you want to be a decent work as a programmer/ in the technology field then you don't need to do CS, there are other courses out there, I'll try and look for some after I post this, but people with CS are desired because the tough stuff requires you be good at problem solving. If you want to be really good at programming, then you need to be really good at this problem solving side, which often requires maths (and depending on the problem, complicated maths).