7.94 A function defined on the set of natural numbers $N$
$$
f(n)=\left\{\begin{array}{ll}
n-3, & \text { if } n \geqslant 1000, \\
f[f(n+7)], & \text { if } n<1000 .
\end{array}\right.
$$

Then the value of $f(90)$ is
(A) 997 .
(B) 998 .
(C) 999 .
(D) 1000 .
(2nd "Hope Cup" National Mathematics Invitational Competition, 1991)
［Solution］From the given conditions, we know
$$
\begin{array}{l}
f(1000)=1000-3=997, \\
f(999)=f[f(1006)]=f(1003)=1000, \\
f(998)=f[f(1005)]=f(1002)=999, \\
f(997)=f[f(1004)]=f(1001)=998, \\
f(996)=f[f(1003)]=f(1000)=997, \\
f(995)=f[f(1002)]=f(999)=1000, \\
f(994)=f[f(1001)]=f(998)=999, \\
f(993)=f[f(1000)]=f(997)=998, \\
f(992)=f[f(999)]=f(1000)=997, \\
f(991)=f[f(998)]=f(999)=1000, \\
\ldots \ldots \ldots \ldots
\end{array}
$$

Recursively, we have
$$
f(1000-k)=\left\{\begin{array}{ll}
997, & k=4 m, \\
1000, & k=4 m+1, \\
999, & k=4 m+2, \\
998, & k=4 m+3 .
\end{array} \quad(m \in N)\right.
$$

Thus, $f(90)=f(1000-910)=f[1000-(4 \cdot 227+2)]=999$. Therefore, the answer is $(C)$.