A correspondent for the Al-Jazeera television network died in a separate attack.
The United States agreed later not to fire on the 18-story Palestine Hotel, where many members of the international media are staying to cover the war.
"We don't target journalists. But we will continue to target Iraqi military forces," said Capt. Frank Thorp, a Central Command spokesman in Qatar.
CBS News Correspondent Lara Logan was inside the hotel when it was fired on.
The U.S. military said "that they were under fire from the building - small arms fire and rocket-propelled grenades," reports Logan. "But I know, because I was in the building, along with all the other journalists who were here, that no one was firing from this building."
Logan says the incident "brings it home to us because we're here on the ground.
"But this is happening to Iraqi families all across Baghdad."
Abu Dhabi television showed damage next to a high balcony that appeared to have been caused by a tank shell or a rocket. Journalists in the building said they saw a tank aim at the building just before it was hit.
In a statement, the Reuters news agency said television cameraman Taras Protsyuk, 35, was killed in the blast. Protsyuk, a Ukrainian national based in Warsaw, had worked for Reuters since 1993 and had reported from conflicts in Bosnia, Chechnya, Afghanistan and Kosovo.
"We are devastated by the death of Taras, who had distinguished himself with his highly professional coverage in of some of the most violent conflicts of the past decade," said Editor-in-Chief Geert Linnebank.
The Spanish television network Telecinco said its cameraman, Jose Couso, died after undergoing surgery. He was 37.
The wounded were Reuters television satellite dish coordinator Paul Pasquale, of Britain; Samia Nakhoul of Lebanon, who was the Reuters bureau chief in the Persian Gulf; and Reuters photographer Faleh Kheiber, an Iraqi. Doctors said their injuries were not life-threatening.
"Clearly the war, and all its confusion, has come to the heart of Baghdad," Linnebank said. "But the incident nonetheless raises questions about the judgment of the advancing U.S. troops who have known all along that this hotel is the main base for almost all foreign journalists in Baghdad."
Some U.S. troops said they took fire from snipers on the rooftop of the hotel, while Brig. Gen. Vincent Brooks, a U.S. Central Command spokesman, said the fire came from the lobby area. He later said it was uncertain where it came from.
Other soldiers said tanks were taking mortar and grenade fire from in front of the hotel, and saw binoculars trained on them from an upper floor. Suspecting a "spotter" post, they fired.
Frightened reporters in flak vests ran from the hotel while their colleagues carried the wounded to the lobby. Al-Jazeera television showed two people being carried out on blankets and put into cars that took off, apparently for hospital.
Troops told journalists they should hang white sheets from their hotel room windows.
Earlier Tuesday, a correspondent for the Al-Jazeera television network was killed when its Baghdad office was hit during a U.S. bombing campaign that some employees claimed say may have been deliberate.
Correspondent Tareq Ayyoub died after suffering serious wounds, the network announced. The office was heavily damaged by two missiles and another cameraman was injured, Al-Jazeera said.
The Abu Dhabi TV office in Baghdad was also targeted by U.S. bombing, the station reported. Officials at Abu Dhabi TV were not available for comment.