It can be shown that for any infinite field $k$ we have $I(k^n)=(0)$, where for $A\subseteq k^n$ we define $$I(A)=\{f\in\mathbb{C}[x_1,\ldots,x_n]:f(a)=0\text{ for all }a\in A\}$$ in case you don't use this notation.
We can deduce this quickly for $\mathbb{C}$ in particular by the Nullstellensatz: $I(\mathbb{C}^n)=I(V((0)))=\sqrt{(0)}=(0)$ as $\mathbb{C}[x_1,\ldots,x_n]$ is an integral domain.
Then we have shown that the only polynomial which vanishes everywhere on $\mathbb{C}^n$ is $0$. Clearly $fg$ vanishes on all of $\mathbb{C}^n$, so $fg=0$ and then, as you said, either $f=0$ or $g=0$.
Note that Zariski open sets are only required to be dense in irreducible varieties (which $\mathbb{C}^n$ is, since $(0)$ is prime as $\mathbb{C}[x_1,\ldots,x_n]$ is an integral domain).
For example, consider the variety $A=V(xy)\subsetneq\mathbb{C}^2$. Take the open set $D_A(x)\subseteq A$, then this is contained in $V(y)\subsetneq A$, and so is not dense. This is because $A$ is not irreducible, we can write $A=V(x)\cup V(y)$, with $V(x)\nsubseteq V(y)$ and $V(y)\nsubseteq V(x)$.