The World Cancer Research Fund (WCRF) has estimated that about 155,000 cases of cancer could be prevented every year if people led different lifestyles.
It said that some 387,820 people were diagnosed with cancer in 2019/20, the latest figures available.
However, people leading unhealthy lifestyles mean this figure is higher than it should be.
The charity said that, compared with 2017 data, there was an increase of 8,000 “preventable cases”.
It said that about 40% of cancers could be prevented through lifestyle changes such as eating healthily, being active, maintaining a healthy weight and not smoking.
People can also stop drinking alcohol, cut back their red meat consumption and avoid processed meat to help reduce their risk of cancer.
They can also stay safe in the sun and breastfeed where possible, the charity added.
“Over the years, research has estimated that around 40% of cancers are associated with modifiable risk factors,” said Dr Vanessa Gordon-Dseagu, research interpretation manager at WCRF.
“These risk factors include smoking and limiting sun exposure.
“Alongside this, research has shown that, by following WCRF’s cancer prevention recommendations, individuals can reduce their cancer risk.
“It is also important to remember that our population is ageing, so we are likely to see incidence of cancer continue to increase over the next few decades.
“Screening plays a vital role in improving cancer outcomes – the earlier someone is diagnosed, the more likely they are to survive.”
It comes after Cancer Research UK said that “ending smoking” would slash the number of cancer deaths which are linked to deprivation.
A study published last week in the journal PLOS One found that if nobody in England smoked then cancer deaths linked to deprivation would reduce from 27,200 to 16,500.