$31 \cdot 24$ satisfies the number of positive integer pairs $(x, y)$ for the equation $x^{2}+y^{2}=x^{3}$
(A) 0.
(B) 1.
(C) 2.
(D) infinitely many.
(E) none of the above.
(33rd American High School Mathematics Examination, 1982)
[Solution] Transform the original equation into $y^{2}=x^{3}-x^{2}$, then
$$
y^{2}=x^{2}(x-1) \text {. }
$$

From the latter equation, we can see that as long as $x-1$ is a perfect square, it will work. That is to say, if $k$ is an integer and satisfies $(x-1)=k^{2}$, then $x=1+k^{2}$, and there exists a $y$ that satisfies $x^{2}+y^{2}=x^{3}$.
Therefore, the equation has infinitely many solutions.
Hence, the correct choice is $(D)$.