Sharma, Ajinkya Rahane (88 not out) and Suresh Raina (75) made merry against Afghanistan's limited bowling resources to propel India to 364-5 at the Adelaide Oval.
The two-time world champions then restricted Afghanistan to 211-8 to finally taste victory before they begin their title defence against arch-rivals Pakistan on Sunday.
In an otherwise frustrating Australian summer, India lost the four-test series to Australia, could not win a single match in the subsequent tri-series also involving England, and were spanked by the World Cup hosts in their first warm-up match on Sunday.
Opting to bat first, India lost quick two wickets before Sharma and Raina (75) added 158 runs in the next 25 overs. Worryingly for them, however, opener Shikhar Dhawan's lack of footwork once again led to his dismissal while batting mainstay Virat Kohli and captain MS Dhoni also could not spend enough time in the middle.
Sharma, the only cricketer to hit two 200-plus ODI scores, appeared to have recovered fully from a hamstring injury as he hit seven sixes and 12 boundaries in his 122-ball knock.
Contrary to expectations, Sharma did not retire after his century to allow other teammates some batting practice.
In a pitchside interview after the Indian innings, Raina said his team would try to restrict Afghanistan to under 250 which they did but their inability to bowl out the minnows once against proved their bowling limitations.
Nawroz Mangal (60) and Usman Ghani (44) shone with the bat for Afghanistan who begin their World Cup campaign against Bangladesh on February 18.
India lacked sharpness in the field with Mohammad Shami and Ambati Rayudu dropping regulation catches. In contrast, Dhawan and Umesh Yadav collaborated to take a spectacular catch to remove Ghani.
Dhawan ran back from short midwicket to take a tumbling catch but the ball popped out of his hands and he juggled with it before flicking it into the hands of Yadav, who had rushed from long-on to catch the skier before halting to avoid a collision.
Like Sports on Facebook, follow @ETribuneSports on Twitter to stay informed and join in the conversation.
COMMENTS (2)
Comments are moderated and generally will be posted if they are on-topic and not abusive.
For more information, please see our Comments FAQ