Most century by a batsman in one day internationals (ODI career).
Sachin Tendulkar has scored most centuries in one day career. List of most century in tests shows lot closer race than similar one in one day internationals (ODI or one day matches). Sachin Tendulkar is leader in both the lists and finished one short of 50 hundreds whereas no other batsman internationally has even gone past 30 mark.

Ricky Ponting of Australia is the second front runner but his one day form dipped before he retired from all formats while aging Sri Lankan opener = Sanath Jayasuriya, man with 28 centuries, is long time off international arena.

Sourav Ganguly was another prolific century maker in the format but he quit after 22 while Herschelle Gibbs holds the record most centuries in one day matches for South Africa but he too is past his prime.

Interesting is the presence of Chris Gayle, man with maximum tons by a West Indies batsman (going past 18 by Brian Lara). Gayle may have had chances of challenging Tendulkar's record in five years time but he's lost in some battle with WICB.

Desmond Haynes once held the record before Tendulkar broke it, and owns it since then.

Can Virat Kohli break Tendulkar's record? that's the question we all will be wondering for few years to come. So far, Kohli indeed has crossed initial milestones at a better rate, breaking Viv Richards' record of fastest to 5000 ODI runs. AB de Villiers and Hashim Amla are two South Africans dark horses we shouldn't ignore.

Nathan Astle holds New Zealand record with 16 hundreds while Marcus Trescothick has most by an England batsman = 12.
Most century by a batsman in one day cricket career.
Batsman (Country) 100s ODIs 50s NO Best 0s
Sachin Tendulkar (India) 49 463 96 41 200* 20
Ricky Ponting (Australia) 30 375 82 39 164 20
Sanath Jayasuriya (Sri Lanka) 28 445 68 18 189 34
Sourav Ganguly (India) 22 311 72 23 183 16
Chris Gayle (West Indies) 21 258 46 17 153* 22
Herschelle Gibbs (South Africa) 21 248 37 16 175 22
Virat Kohli (India) 20 141 31 19 183 10
Saeed Anwar (Pakistan) 20 247 43 19 194 15
Kumar Sangakkara (Sri Lanka) 19 380 86 37 169 14
Brian Lara (West Indies) 19 299 63 32 169 16
AB de Villiers (South Africa) 18 168 38 27 146 6
Mark Waugh (Australia) 18 244 50 20 173 16
Tillakaratne Dilshan (Sri lanka) 17 288 38 40 160* 9
Jacques Kallis (South Africa) 17 328 86 53 139 17
Desmond Haynes (West Indies) 17 238 57 28 152* 13
Hashim Amla (South Africa) 16 97 25 7 150 2
Mahela Jayawardene (Sri Lanka) 16 423 74 38 144 27
Nathan Astle (New Zealand) 16 223 41 14 145* 19
Adam Gilchrist (Australia) 16 287 55 11 172 19
Virender Sehwag (India) 15 251 38 1 219 14
Mohammad Yousuf (Pakistan) 15 288 64 40 141* 15
Yuvraj Singh (India) 13 293 51 39 139 18
Upul Tharanga (Sri lanka) 13 174 28 9 174* 14
Gary Kirsten (South Africa) 13 185 45 19 188* 11
Marcus Trescothick (England) 12 123 21 6 137 13
Rahul Dravid (India) 12 344 83 40 153 13

Upcoming batsmen
Who haven't retired and are rising up the ladder to join above list are..
11 centuries = Gautam Gambhir of India.
10 centuries = Ross Taylor of New Zealand.
9 centuries = Md Hafeez of Pakistan, MS Dhoni of India, Shane Watson of Australia and Kevin Pietersen of England.
8 centuries = Michael Clarke of Australia.