The fire, at the Winter Cherry mall in the city of Kemerovo, killed 41 children, according to the Interfax news agency, and the calamitous way it was handled has stirred anger and focused attention on corruption and lax fire safety standards.
Rallies in memory of the victims were held in several cities around Russia, and at least one, in Moscow, turned into an anti-government demonstration.
Putin, comfortably re-elected only this month, laid flowers at a memorial to the victims in the coal-producing region, about 3,600 km (2,200 miles) east of Moscow, before chairing a meeting and declaring Wednesday a national day of mourning.
"What's happening here? This isn't war, it's not an unexpected methane explosion at a coal mine. People came to relax, children. We're talking about demography and losing so many people," Putin angrily told officials.
"Why? Because of some criminal negligence, because of slovenliness. How could this ever happen?" he added. "The first emotion when you hear about the number of dead and dead children is not to cry but to wail. And when you listen to what has been said here, to be honest, other emotions arise."
Investigators said fire exits had been illegally blocked, the public address system had not been switched on, the alarm system was broken, and children had been locked inside cinemas.
The fire swept through the upper floors of the shopping centre, where a cinema complex and children's play area were located, on Sunday afternoon.
Hundreds of angry protesters, many of them crying, gathered in central Kemerovo. The mayor, Ilya Seredyuk, tried to speak, but his words were often drowned out by chants calling on him to resign.
"Why don't they tell us the truth?" shouted one protester.
Many locals do not believe the official death toll of 64 and suspect that hundreds of people were killed in the blaze and that a cover-up is under way, something Putin has flatly denied.
Relatives of victims say they have compiled a list of 85 people, most of them children, who are still missing.
Public anger in Kemerovo was reflected in protesters' placards. "How many victims are there really?" read one, while another suggested officials had taken bribes to sign off on the mall's fire safety.
One senior regional official, Sergei Tsivilev, got down on his knees to apologise to the crowd.
Natalia and Sergei Agarkov, whose two children were killed along with their grandmother, stood on the square holding pictures of them.
"Masha was 10, Kostya was eight," Sergei told Reuters. "Masha ... was really good at sport. She should have run out, but everything was locked. I identified them yesterday. I didn't see Kostya, but recognised him by his little boots."
ALARM NOT WORKING
Alexander Bastrykin, head of Russia's Investigative Committee, which handles major crimes, told Putin the fire alarm system in the mall had been out of order since March 19, and that a security guard had not turned on the public address system to warn people to evacuate the building.
He said five people had already been detained.
Candles were lit and flowers laid as rallies were held in several cities in memory of the Kemerovo victims, including two in St Petersburg and two in Moscow, on Manezhnaya and Pushkinskaya squares.
The latter has frequently been a venue for anti-government protests, and Tuesday's demonstration, attended by several thousand people including opposition leader Alexei Navalny, quickly took on a political tone.
Protesters held banners reading "Bribes kill children" and "We demand a real investigation", and some chanted "Down with the cowardly regime!", "Putin - resign!", "What did the children die for?" and "We are sick and tired of him", meaning Putin.
"It was the regime that caused the deaths ... The criminal regime should resign," said 43-year-old Innokentii, who works in the financial sector.
"The most awful thing is that no one is going to be really punished for this," said Kirill, 28. "We've had that many times before."
(Additional reporting by Alexander Reshetnikov, Dmitry Madorsky, Maria Kiselyova, Gleb Stolyarov, Daria Korsunskaya and Polina Devitt.; Writing by Christian Lowe, Andrew Osborn and Denis Pinchuk; Editing by Kevin Liffey)