If $f$ is continuous and $f(x+y) = f(x)+f(y)$, then $f(x) = cx$ for all $x \in \mathbb{R}$
Solution 1:
Hint: $f(0+0)=f(0)+f(0)$. This implies that $f(0)=0$.
Write $f(1)=c$, let $n>0$ be an integer, recursively, show that $f(n)=nc$.
This implies that $f(n-n)=0=f(n)+f(-n)$. Deduce that $f(-n)=c(-n)$. Thus, $n\in Z$ implies $f(n)=cn$.
$f(q(1/q)=qf(1/q)=c$ thus $f(1/q)=c/q$, $f(p/q)=pf(1/q)=cp/q, p,q\in Z$.
If you want the result for $R$, every real $x$ is a limit of a sequence $(x_n)$ of rational, since $f$ is continuous, $f(x)=lim_nf(x_n)=lim_ncx_n=cx$.
Solution 2:
Hint: Check that the claim holds for integers. Let $f(1) = \alpha$. Then use the relation to show that $f(m) = m \alpha$ for all integers.
Show that in fact the above result holds for rational numbers.
Use the fact that continuity in a metric space is equivalent to sequential continuity.
Use that every real number is a limit of a sequence of rational numbers together with continuity to conclude the result.