Let $\mathbb{k}$ be the field. Let $\{e_1,...,e_n \}$ be a basis of $X$. For every $i \in \{1,...,n\}$ let $\epsilon_i$ be the unique linear functional $X \to \mathbb{k}$ such that $\epsilon_i(e_j)=\delta_{i,j}$. Then as you probably know $\{\epsilon_1,...,\epsilon_n \}$ is a basis of $X^*$.
Now, without loss of generality we can assume that the $f_i$'s are linearly independent in $X^*$, otherwise you write someone of them as linear combination of the other ones and then you just consider these ones.
Then we can complete the linearly independent set $\{f_1,...,f_p\}$ to a basis $\{f_1,...,f_n\}$ of $X^*$. As you probably know (Q), there is unique a basis $\{e_1,...,e_n \}$ of $X$ such that $f_i=\epsilon_i$ for every $i \in \{1,...,n\}$.
Hence it is the case that $f_i(e_{p+1})=\epsilon_i(e_{p+1})=0$ for every $i \in \{1,...,p\}$ and of course $e_{p+1}\neq 0$.
How to prove Q. Let us consider the usual isomorphism $\alpha \colon X \to X^{**}$ such that, for every $x \in X$, it is the case that $\alpha x$ is the linear functional $X^* \to \mathbb{K}$ such that $(\alpha x)(f)=f(x)$ for every $f \in X^*$. As $\{f_1,...,f_n \}$ is a basis of $X^*$, it is the case that $\{\epsilon'_1,...,\epsilon'_n \}$ is a basis of $X^{**}$, being $\epsilon'_i$ the unique linear functional $X^* \to \mathbb{k}$ such that $\epsilon'_i(f_j)=\delta_{i,j}$. Moreover, being $\alpha$ an isomorphism $X \to X^{**}$, it is the case that $\{e_1:=\alpha^{-1}\epsilon'_1,...,e_n:=\alpha^{-1}\epsilon'_n \}$ is a basis of $X$.
Verify that the basis $\{\epsilon_1,...,\epsilon_n \}$ of $X^*$ given by the basis $\{e_1:=\alpha^{-1}\epsilon'_1,...,e_n:=\alpha^{-1}\epsilon'_n \}$ of $X$ is precisely the one that we were looking for.