http://www.makeuseof.com/answers/move-exchange-contacts-iphone-icloud-account/
iCloud: Microsoft Exchange behavior with iCloud
http://support.apple.com/kb/HT5058
If you have Microsoft Outlook with access to the same Exchange account:
1) 1.Export all contacts as vcf
http://manage-this.com/backup-outlook-contacts-to-vcard-3-easy-steps/
2) a) Import into iCloud by first Log in to iCloud
b) Click Contacts
c) Drag the .vcf file into the window under All Contacts. Wait a little bit depending on contacts.
d) On your iPhone, go to Settings > iCloud and make sure Contacts is listed as ON.
#1) Plug in your device, find it in iTunes, select the Info tab.
#2) Check Sync Contacts with Google Contacts. Enter account info and then sync your device. This will add an extra category in your Contacts on your device. Mine called it ‘On My PC’.
#3) Check to make sure your device has accepted all of your Google Contacts by going to contacts and looking in each new group.
#4) Go back to iTunes and uncheck Sync Contacts. iTunes will ask you if you want to leave associated contacts on phone, select ‘Leave contacts on device’.
#5) Go to Settings on your device and select ‘iCloud’. All items should be ON, turn contacts OFF. Your phone will ask you if you want to leave all contacts on your phone. Leave them on your phone.
#6) Turn contacts back ON and your device will then ask you if you want to merge all contacts to iCloud, hit Merge.
http://forums.macrumors.com/showthread.php?t=1253546
Google Contacts to iCloud
http://www.youtube.com/watch?feature=player_embedded&v=66-dOR4pPJU