3. Given the function $f(x)$ satisfies: for any $x, y \in \mathbf{R}$, we have
$$
f\left(x+y^{2}\right)=f(x)+2 f^{2}(y) \text { and } f(1) \neq 0 \text {. }
$$

Then the value of $f(2007)$ is $(\quad)$.
(A) 1002.5
(B) 1003
(C) 1003.5
(D) 1004
3. C.

Let $x=y=0$, we get $f(0)=0$.
Let $x=0, y=1$, we get $f(1)=\frac{1}{2}$.
Let $y=1$, we get $f(x+1)-f(x)=\frac{1}{2}$.
Therefore, $\{f(n)\}$ is an arithmetic sequence with the first term $f(1)=\frac{1}{2}$ and common difference $\frac{1}{2}$. Thus,
$$
f(2007)=f(1)+\frac{1}{2}(2007-1)=1003.5
$$