With regard to the OP:
-
crab, since I am referring to a kind of food rather than the animal itself. I would say lamb, not lambs; chicken, not chickens; and duck, not ducks. However, I might say crabs if they were small crabs and it took more than one to make a meal (e.g. soft-shell crabs.)
-
octopus. Same reasoning as above.
-
octopus. Same reasoning.
-
it. Same reasoning; the name of the food is singular.
-
I would say prawns and clams (and oysters, mussels, etc.) because it takes more than animal to make a meal. Shrimp is a bit iffy; I would probably say shrimp because that is often used as the plural as well.
Linguistically, “octopi” is just wrong. The correct Latin plural is octopodes; “octopi” is pseudo-Latin, a word that looks like Latin but isn’t. However, “octopi” is one of those mistakes that is made so frequently that it has now entered some dictionaries, and is sort-of-accepted. The most correct plural in English is “octopuses.”