Очень интересный и очень, как оказалось, непростой вопрос.
Отвечу сразу: в слове замок выделяется корень замок. Проверила себя по словарю Тихонова. И у Тихонова замок - это корень.
Прочитала ответы предыдущих авторов и очень удивилась. Как же можно выделять в слове замок корень зам? Это каким образом его там можно выделить? Нужно помнить, что в корне содержится лексическое значение всех однокоренных слов. А теперь попробуйте образовать однокоренные слова с корнем зам. Что получилось? Ничего.
Если смущает, что в словах замок и замочек корень различается буквами к и ч, то следует вспомнить исторические чередования, а именно к//ч. Например, рука - ручка. В словах замок и замки наблюдаем беглую гласную в корне.
Теперь самое интересное. Подбирая однокоренные слова, можем увидеть замкнуть, но ведь есть и отмыкать,отмычка и т.д. Получается, что в слове замок корень мок. А вот и нет! Теперь на помощь придет Этимологический словарь. А словарь нам говорит, что слово замок - это заимствованное слово, которое пришло в русский язык из польского zamek.
Так что однозначно можно сказать, что в слове замок выделяется корень замок.