This is a rule. :(
The noun is in one case, but the adjective is in another case. In constructions "number + adjective + noun", instead of nominative (for inanimate nouns, instead of accusative too), we use the following forms of adjectives:
- when noun is not «один» or ending in «один», we use singular nominative adjective,
- with other numbers (no difference between 2—4 and others), masculine and neuter adjectives are in genitive plural: два больши́х стола́ 'two big tables', пя́ть больши́х столо́в 'five big tables',
- and feminine adjectives are either in nominative plural (more common) or is genitive plural.
In other cases (e.g. genitive, dative), you use the plural adjective of the relevant case: да́ть дву́м бе́лым ко́шкам молока́ 'to give milk to two white cats'.
In your example about giving milk to cats, you have milk as countable accusitive plural? In English I'll say "milks" or "juices" or "waters" to mean "# containers of ___". (ie "take two waters" = "take two bottles/glasses/etc of water") Is it the same? у меня сейчас две плачущих глаза :.(
edit: An hour after I wrote this it occurred to me "some milk", genitive! But I won't go delete it now. Thanks for the speedy response.
No, milk in «да́ть молока́» is singular genitive. «Молоко́» doesn't have a plural form.
In my example, ко́шки 'cats' are used with a numeral, and not milk.
Wikipedia has a table: https://en.wikipedia.org/wiki/Russian_declension#Adjectival_declension
Я слышу «две» O_o
Качество аудио, конечно, оставляет желать лучшего.