a) Suppose $d(x,y)<\delta$, then $f(x)=d(x,A)\leq d(x,y)+d(y,A)\leq \delta + f(y)$ because for any $z\in A$ $d(x,z)\leq d(x,y)+d(y,z)$ and taking the infimum we have the inequality. Then $|f(x)-f(y)|\leq\delta\;.$ This shows that $f$ is continuous, because if we want $|f(x)-f(y)|<\epsilon$ for a given $\epsilon>0$, it is enough to take $x,y$ such that $d(x,y)<\delta$ with $\delta=\epsilon$.
b) Obviously $f(z)=0$ for every $z\in A$. Moreover, if $z\not\in\overline{A}$, then there exists $r>0$ such that $\{x : |z-x|. Therefore $f(z)\geq r$, as there is no point of $A$ at a distance less than $r$ from $z$. So $f(z)\neq0$ if $z\not\in\overline{A}$. Finally, if $\{z_n\}\subset A$ and $z_n\to z$, then $f(z_n)\to f(z)$ because $f$ is continuous and so $f(z)=0$ for every $z\in \overline{A}$.
c) I don't understand: the implication $x\in \overline{A}\Leftrightarrow f(x)=0$ is exactly the point b), which is true for every $A$. Maybe, if $A$ is closed, what is true is that $x\in A\Leftrightarrow f(x)=0$, which follows obviously from b), anyway.
d) Take a point $x$ and set $g(z)=d(x,z)$. By a), $g$ is continuous (it is a function of the considered form, with $A=\{x\}$). So, if we restrict $g$ to a compact set $A$, it attains in $A$ a minimum and a maximum; call $a_x$ one of the points of $A$ where $g$ has its minimum. It is a simple matter of definitions to show that $f(x)=g(a_x)=d(x,a_x)$.