There is no reason to suppose that anyone anywhere can speak English. It isn’t a universal language. By native speakers, English is ranked No.3 after Chinese Mandarin and Spanish. By second language speakers, English is huge and has about 1.1 billion users. However, if you consider that there are 7 billion people in the world, that means, globally, only 1 in 7 people can speak some English. So wherever you go, you will meet people who can’t speak English. There is nothing special about China in that regard.
Of people who have studied English at school, few maintain their skill set. In their working life because they have no actual use for English. If you don’t use a language, then you quickly become rusty and then later your will forget it completely.
For the last couple of decades, China has had English as a compulsory subject in school – from mid primary right through to the end of university. However, prior to that, there were few people who studied English. Thus English teachers have long been in short supply and what few teachers they had, were often substandard.
Many students in China don’t learn the English language as a practical language. They learn the grammar. They learn the vocabulary. They learn to translate English texts into Chinese. Most of all, they learn to pass the English exams. However, they don’t learn to use English as a mode of communication – which really is the definition of a language. The main reason why is as mentioned above, they have no cause to ever use the language. They never meet foreigners, they only read Chinese books and movies or have them translated into Chinese, and they rarely travel abroad.