已知函数 $f(x)=\left\{\begin{array}{ll}\log _{2}(1-x), & x \leq 0 \\ -x^{2}+4 x, & x>0,\end{array}\right.$ 则函数 $g(x)=f\lfloor f(x)\rfloor-1$ 的零点个数为 $(\quad)$
令 $f(x)=t$, 则可得 $f(t)=1$,

当 $t \leq 0$ 时, 即可得 $\log _{2}(1-t)=1$, 解得 $t=-1$;

当 $t>0$ 时, 即可得 $-t^{2}+4 t=1$, 解得 $t=2^{ \pm} \sqrt{3}$.

则 $f(x)=-1$, 或 $f(x)=2+\sqrt{3}$, 或 $f(x)=2-\sqrt{3}$

当 $x \leq 0$ 时,

令 $\log _{2}(1-x)=-1$, 解得 $x=\frac{1}{2}$, 不满足题意;
令 $\log _{2}(1-x)=2+\sqrt{3}$, 解得 $x=1-2^{2+\sqrt{3}} \leq 0$, 满足题意;

令 $\log _{2}(1-x)=2-\sqrt{3}$, 解得 $x=1-2^{2-\sqrt{3}} \leq 0$, 满足题意.

当 $x>0$ 时,

令 $-x^{2}+4 x=-1$, 解得 $x=2+\sqrt{5}$ 或 $x=2-\sqrt{5}$ (舍);

令 $-x^{2}+4 x=2+\sqrt{3}$, 整理得 $x^{2}-4 x+2+\sqrt{3}=0$,

解得 $x=2+\frac{\sqrt{6}-\sqrt{2}}{2}$ 或 $x=2-\frac{\sqrt{6}-\sqrt{2}}{2}$ 满足题意;

令 $-x^{2}+4 x=2-\sqrt{3}$, 整理得 $x=2+\frac{\sqrt{2}+\sqrt{6}}{2}$ 或 $x=2-\frac{\sqrt{2}+\sqrt{6}}{2}$ 满足题意.

综上所述, 函数零点有 $1-2^{2+\sqrt{3}}, 1-2^{2-\sqrt{3}}, 2+\sqrt{5}, 2 \pm \frac{\sqrt{6}-\sqrt{2}}{2}, 2 \pm \frac{\sqrt{2}+\sqrt{6}}{2}$

共计7个.

故答案为: B

【分析】令 $f(x)=t$, 求得 $f(t)=1$ 的根, 再求 $f(x)=t$ 的根, 则问题得解.