Pakistan´s second win from as many games lifted it atop Group A, followed by Australia, which gave West Indies a second defeat by 50 runs, then India. The top two advance to next week´s semifinals. [break]
Malik´s 128 off 126 balls helped Pakistan tally 302-9. India reached 205-5 in the 35th over, only to collapse all out for 248 in the 45th.
All-time one-day batting leader Sachin Tendulkar was out early in the chase for 8, but fellow opener Gautam Gambhir batted fluently for 57 off 46 balls and gave India a solid platform with Rahul Dravid.
Even after Gambhir was run out at 90-2 and Vinod Kohli for 16 and skipper Mahendra Singh Dhoni for three - the last two both to Shahid Afridi - Dravid was still firing and India was in good shape at 133-4.
Suresh Raina joined Dravid, and the pair put on 72 before Raina was trapped lbw by Saeed Ajmal for a 41-ball 46, including a pair of sixes.
That signalled the end of India´s hopes as the team collapsed, losing five more wickets for just 43 runs.
"I thought it was a pretty gettable total," Dhoni said. "And while Raina was batting, I thought we were in it."
Dravid´s 76 off 103 balls ended at 238-7 when Harbhajan Singh sent him back as they attempted a third run, and Dravid cramped as he tried to reach the safety of his crease ahead of the throw from Umar Gul.
Pakistan skipper Younis Khan praised the performance of his bowlers, notably Afridi, who took 2-39, and Ajmal, the 31-year-old playing in his 17th ODI. He claimed 2-31.
Earlier, when Younis was out for 20 in the 15th over, Pakistan was precariously placed on 65-3.
But Malik´s century was part of a 206-run partnership with Mohammad Yousuf for the fourth wicket.
Malik started slowly, reaching his half-century off 81 balls with five fours. But as the Indian attack was gradually worn down, he opened up and reached his century off 108 balls, striking eight more boundaries. He added three more fours before he was dismissed trying to hit Harbhajan over mid-on for another.
It was Harbhajan´s only wicket as he was milked by Malik and Yousuf, his 10 overs costing 71 runs at SuperSport Park.
Yousuf was the perfect foil for Malik, scoring more quickly in the early stages of his innings. He reached his half-century off 55 balls, and then stood back and watched as Malik accelerated the run rate.
He opened up again after Malik reached his century, until he was bowled by Ashish Nehra for 87 off 88 balls with seven fours.
The innings lost momentum after that, with five wickets falling for 31 runs.
Best of the bowlers was Nehra, who took 4-55 in 10 overs. Ishant Sharma finished with 2-39 as the batsman attacked at the end.
"While Pakistan was scoring so freely, I thought I was three or four bowlers shorts," said a rueful Dhoni.
On Sunday, New Zealand meets Sri Lanka and South Africa faces England.
Lives on hold in India's border villages with Pakistan