I did a little testing.
The other way to changes which contacts show up from which accounts is the Groups "button" in the Contacts app. If you have more than one account set to show its contacts in the Settings app, then you can control which of the accounts are currently shown.
Unfortunately, I cannot find an easy way on the iPhone to select which gets the new contact added to it when you add a new account other then turning off the display of all the accounts except the one to which you want to add the account. Kind of a pain if you add contacts on your iPhone often. I am a little surprised Apple does not have a field in the contact to select which account the contact is in.
I will note that you can also only display certain "groups" of contacts. But again Apple makes it a really pain to deal with it in their Contacts app. You have to create the group on a non-iOS device. And adding a contact to a specific group within an email account requires the same step I outlined above for adding contacts to different accounts. Unfortunately, the Contacts app does not appear to show groups for Gmail accounts in my testing...only iCloud accounts (not sure about other services as I don't use Yahoo or Outlook.com). So, if they wanted to try to use groups, they would need to use an iCloud account.
The fact is that Apple's contact app for iOS is really crappy for handling multiple accounts and groups. It has very limited functionality from my "playing around".
One option to consider might be a third-party contact app. There appears to be some that might allow better control of groups if you want to use groups with Gmail, although I have not used any of them, so I cannot say how well.
Edited by smax013, 25 November 2015 - 09:38 PM.