Pupils in England will be encouraged to stay on to take maths A-levels, with a £600 bonus for schools for every extra pupil taking maths over current levels.
The £117m boost for maths was announced in the Budget, alongside plans to train more computer teachers and support adult skills.
But there was no extra cash for core school spending, despite heads calling for £1.7bn to tackle shortages.
Labour leader Jeremy Corbyn criticised the lack of movement on student debt.
He also said that schools in England would be “5% worse off by 2019”.
The lack of movement on school funding would leave “parents and teachers deeply disappointed,” said the National Education Union.
The UCU lecturers’ union said the “glaring omission” from the Chancellor’s speech was any reference to the promised review of university funding or support for students.
Maths skills are key to “cutting edge” jobs of the future, said the Chancellor Philip Hammond in his Budget statement.
He announced financial incentives to boost maths, after concerns that too many drop the subject after GCSEs.
From 2019, schools will receive an extra £600 for every additional student taking maths or further maths A-level or core maths above current levels.
There was also a call for proposals for maths specialist schools to be opened.
There will be £42m over three years to provide extra training to “improve the quality of teaching” in a pilot project in some under-performing schools in England.
In the selected schools, each teacher will have access to £1,000 worth of training.
Schools have struggled to recruit computer science teachers – and there will £84m over four years to train 12,000 more staff qualified to teach the subject, with the support of a new National Centre for Computing.
The Chancellor announced a national re-training scheme for adults, in partnership with the CBI and the TUC, with an initial £30m to teach digital skills.
Further education colleges were promised £20m to prepare for the so-called “T-level” qualifications, which will be for vocational subjects.
Kevin Courtney, joint leader of the National Education Union, said: “The Budget, with no significant new money for education, shows that the Government has chosen to ignore the anger of parents and the clear evidence of the problems being created by real terms cuts to education.”