None of the injuries was life-threatening, said Bryce Paton of the Calgary Airport Authority.
Passenger Jayne Harvey said the plane dropped sharply, then rolled left and right as the pilots fought to bring it under control.
The pilots came on the intercom "and said they were flying manually and that the computer had been knocked out," she said. "I thought that that was it for me."
Air Canada did not immediately confirm the cause of the problem.
The jet, carrying 88 people from Victoria, British Columbia, to Toronto, was diverted to Calgary for the emergency landing, officials said.
The plane landed safely at 8:30 a.m. with a request for medical units to meet the aircraft because of injuries on board, Paton said. Ambulances surrounded the jet and paramedics and tended to the injured.
Stuart Brideaux of Calgary Emergency Medical Services said 10 people were taken to a hospital.
Andrew Evans said he was seated near the cockpit when a calm flight turned to heart-pounding chaos.
"All of a sudden there were three big drops," Evans said.
"One major drop and then two more that went `Oomph! Oomph!' And the plane rolled a bit after that. I was in the very, very front seat of the plane and was watching dishes fly through the air," said Evans.
"There was a crash. The cart tipped over and there was a lot of squealing. It was over and done with in 10 or 15 seconds."
The rough flight was the second in Canada in recent months. In September, nine people were hurt and three sent to hospital after a Halifax-bound WestJet flight hit turbulence with little warning.