The Joint Rescue Co-ordination Centre in Victoria says a military aircraft found the site in the Cache Creek Hills at about 6:30 p.m.
A statement from the centre says the pilot, 16-year-old Lorne Perreault, did not survive the crash and his body was transported to the Kamloops Airport.
At the time of the crash, Perreault was training for his private pilot's license.
He was reported overdue at about noon Tuesday after failing to return to the Kamloops airport following a routine solo flight aboard a Cessna 172.
Officials said the teenager was an experienced student, with more than 60 hours of flight time and all the necessary training required by Transport Canada.
Also on HuffPost