The interior ministry said the crash happened outside the town of Marhanets, in the Dnipropetrovsk region, when the bus attempted to cross the track, ignoring a siren that indicated an oncoming train.

Railway officials said all the casualties had been on the bus.

The president of Ukraine, Viktor Yanukovych, declared a national day of mourning and the prime minister, Mykola Azarov, ordered his government to pay the families of the dead 100,000 hryvna (£9,100) each.

Azarov also instructed transport officials to install automated crossing gates at all the country's railway crossings to prevent cars, buses and trucks from ignoring the siren.

Road and railway accidents are common in Ukraine, where roads are in poor condition, many vehicles are badly maintained and drivers and passengers routinely disregard safety and traffic rules.