How to prove that a polynomial of degree $n$ has at most $n$ roots? How can I prove, that a polynomial function $$f(x) = \sum_{0\le k \le n}a_k x^k\qquad n\in\mathbb N,\ a_k\in\mathbb C$$ is zero for at most $n$ different values of $x$, unless all $a_0,a_1,\ldots,a_n$ are zero?
 A: You don't need the fundamental theorem of algebra or the Vandermonde determinant, only the factor theorem. 
Proposition: A polynomial of degree at most n with more than n roots vanishes identically.
Proof: By induction. The base case is $n=0$, which is obvious. Now take a polynomial f of degree at most n, and let $x_1,\ldots,x_{n+1}$ be distinct roots of f. By the factor theorem, we can write $$f(x) = (x-x_{n+1})g(x)$$ where g plainly has degree at most $n-1$. Now substitute $x = x_i$ for $i=1,\ldots,n$. For all these values of x the left hand side vanishes and the factor $(x_i-x_{n+1})$ is nonzero. Hence all these $x_i$ must be roots of g and by induction g is identically zero. QED
This same proof works over any field (or even integral domain).
A: Just a clarification here.  The Fundamental Theorem of Algebra says that a polynomial of degree n will have exactly n roots (counting multiplicity).  This is not the same as saying it has at most n roots.  To get from "at most" to "exactly" you need a way to show that a polynomial of degree n has at least one root.  Then you can proceed by induction.
There are lots of different kinds of proofs that a polynomial must have at least one root.  None of them are totally trivial.
A: Using Linear Algebra,
If the $n+1$ distinct roots are $\alpha_i$, then we have that $x = [a_0, a_1, \dots, a_n]^{T}$ is a solution of $Ax = 0$ where $A$ is the Vandermonde matrix using the $\alpha_i$.
Since the Vandermonde matrix is invertible for distinct $\alpha_i$, it follows that $x = [0, 0, \dots, 0]$.
Thus if $a_j \neq 0$ for some $j$, then your polynomial can have at most $n$ different roots.
Note: This is basically saying that given a field $K$, any polynomial of degree $n$ in $K[x]$ has at most $n$ distinct roots.
Fundamental Theorem of Algebra is an assertion of the fact that $\mathbb{C}$ is algebraically closed, and the $K$ above need not be algebraically closed.
A: The following literature may be of use here:
Theorem. A polynomial $\text{f}$ of degree $\text{n}$ over a field $\text{F}$ has at most $\text{n}$ roots in $\text{F}$.*
Proof. The results is obviously true for polynomials of degree $0$ and degree $1$. We assume it to be true for polynomials of degree $n-1$. If $a$ is a root of $f$, $f=(x-a)q$ where $q$ has degree $n-1$. Since $f(b)=0$ if and only if $a=b$ or $q(b)=0$, it follows by our inductive assumption that $f$ has at most $n$ roots. $\Box$
A: Suppose that the polynomial is
$$f=\sum_{i=0}^na_iX^i \in \mathbb{C}\left[X\right] .$$
Assume that the polynomial function defined by the above polynomial has $n+1$ distinct roots, i.e., $f(x)=0$ for $n+1$ distinct values of x $\in \Bbb C$.
I shall use the theorem:$$\prod_{i=1}^k\left(X-x_i\right)q=f \Longleftrightarrow x_1,...,x_k \text{ are distinct roots of }f\text{, where }q\in\Bbb C[X]  $$
Let $n+1$ distinct roots of $f$ are $x_1,...,x_{n+1}$. Hence, by above theorem, we can say that $ \prod_{i=1}^{n+1}\left(X-x_i\right)q=f$. Since the coefficient lie in the field of complex numbers, hence left hand side has degree $n+1$, while $f$ is of degree n. This is impossible, therefore $f$ can have at most n distinct roots. 
A: Let $\alpha_1,\ldots,\alpha_{n+1}$ be distinct roots for $f(x)$ with ${\sf deg}(f)\leq n$. W.l.o.g, we can assume the leading coefficient of $f(x)$ is always $1$. This can be done by enumerating all the cases:
If ${\sf deg}(f)=n$, then $\alpha_1,\ldots,\alpha_n$ are roots implies $f(x)=(x-\alpha_1)\cdots(x-\alpha_n)$. But $f(\alpha_{n+1})\neq0$, so this does not work.
If ${\sf deg}(f)=n-1$, then $\alpha_1,\ldots,\alpha_{n-1}$ are roots implies $f(x)=(x-\alpha_1)\cdots(x-\alpha_{n-1})$. But $f(\alpha_n)\neq0$, so this does not work either.
$\vdots$
If ${\sf deg}(f)=1$, then $\alpha_1$ is a root implies $f(x)=x-\alpha_1$. But $f(\alpha_2)\neq0$, so this does not work either.
Hence this only case that would work is ${\sf deg}(f)=0$, and so $f(x)=0$.
A: Try Rolle's Theorem with induction.
For base case it works apparently.
Let set $S = \{x : f(x)=0\}$.
For induction step, suppose that $|S|\leq n$ for $f(t)$ of degree $n$.
Then we want to prove that $|S|\leq n+1$ for degree of $n+1$. 
Suppose $|S| > n+1$ for degree of $n+1$, let $x_1 < x_2 <... < x_{n+1} < x_{n+2}$, where $x_i \in S$.
$p(x_1)=...=p(x_{n+2})=0$
By Rolle's Theorem we can find $c_i \in (x_i, x_{i+1})$ s.t. $f'(c_i)=0 \forall i$, where its derivative is just the case for degree $n$.
This implies that $|S|>n$ for the case of degree of $n$, which contradicts with our assumption.
