Yes. Only one iCloud account can be the primary account on any one user account on a Mac, though additional accounts can be added in System Preferences>Mail, Contacts & Calendars, but the result of that is everyone seeing everyone else's data. To keep them separate you need a separate user account per iCloud account.
It may depend on what you mean by separate. Each application has the ability to only show specific data. So for example it is possible to view only user A's contacts, or to change the view so you only see user B's contacts. If this isn't acceptable then each user would need their own user account on the computer.