I had some very very minor programming experience with Python (mostly through CS GCSE, but it is in no way mandatory to have - one can self teach basic Python very easily through online resources). I found it perfectly fine! 🙂 The degree will have admitted a selection of people that love programming and have it as their main hobby, people who just like it, and people who only tolerate it and instead like other aspects of CS (theory, analysis, practical bits that only use coding as a means to an end). The degree, I'd say, is much more than just the programming aspects (at least it was so in my university). I found it very hard to get used to this, but I'd say the useful thing is using the degree as a platform to find out which aspects of CS you actually enjoy and want to engage in/do as a job in the future (or delve into through PhD research!). You will be surrounded by a bunch of people who all see the degree differently but the most important focus is you and how you want to approach the degree.
I assume that this is for the personal statement and you are in A-Levels? If so, I personally did none but I can imagine that it would probably help! I showcased my interest purely through attending a mathematics lecture program in a uni near me, an Oxford summer school (being in Oxford for a week and learning about CS - it's called UNIQ and still may be running), an easter 'school' at another uni (I worked with a few friends to simulate oscillations in Python) and the CyberFirst programme (short cybersecurity course for people in A Levels/GCSE). None of the things I mentioned were paid by the way - these are all free opportunities I applied for online. I also wrote about a purely theoretical study I did of logic gates. All of this was extracurricular but I understand may be hard to reproduce (I managed to get into lots of things that may not be running anymore!), but looking for free opportunities about maths/computer science may be useful to supercharge your personal statement. I was unable to do CS A Level because my school did not do it so I instead tried to spend some of my time outside of school learning about it all. However, if you are familiar with coding or want to learn a language, taking a course may also show good initiative that you want to learn! There are many paid and free courses online for coding and theoretical computer science, as well as many books that you could also quote in your PS (I may be able to point you to a few if you're curious). Overall, it definitely does not hurt to have a project on the side that you could describe in your PS, but know that there are many other things that can similarly help you express interest.
I hope this helps! Please ask more questions if you like 🙂
Edit: I completely misread your second question - whoops! - however, the second answer above is still useful to anyone who is applying for CS and needs ideas for their PS.
Yes, doing projects alongside your degree is not essential but enormously recommended, especially if you want to be a software engineer. Otherwise, it is very helpful but you can get away without doing one. You can use experience during your time at university to express passion towards CS when looking for work (I know I did!). I did not have an internship during my time at university but by leveraging what skills I acquired during my degree, I managed to get a graduate job offer regardless. Which I think proves that you definitely shouldn't sweat it too much, especially during first year. Take this time to figure out what you really like so you can start focusing your effort on whichever field of work/further study you want to go into! A lack of focus can really hurt you, so I'd concentrate on exploring and centering in on something you like after you're confident this may be something you'd want.