Short answer: Only the top of the ponds/lakes freeze over.
All liquids have a boiling point and a freezing point. Boiling water turns into steam and frozen water turns into ice. Water boils at 100 degrees Fahrenheit (100 °F) and freezes at 32 degrees Fahrenheit (32 °F). When the outside temperature drops below 32 degrees Fahrenheit, the water of ponds/lakes freeze over.
However, only the top layer of the pond/lakes will freeze. This is due to something called the anomalous expansion of water. Water becomes less dense and expands rather than contracts when the temperature goes from 104 degrees Fahrenheit to 32 degrees Fahrenheit. As a result, ice forms on top of the water, but not beneath it. This area beneath the ice is where fish survive.