It is quite laborious, but it's not too difficult. In my experiences, students tend to struggle with this kind of question particularly simply because it's so straightforward, they think they're not doing it properly, and it doesn't feel like they've actually proven anything.
Here, let me get you started. First, I'll address closure of the operations. Then I'll prove associativity of vector addition, then I'll establish the additive identity, and I'll leave you to do the rest.
Suppose $f, g \in C[a, b]$ and $\lambda \in \mathbb{R}$. The definitions of addition and scalar multiplication are respectively,
\begin{align}
(f + g)(x) &:= f(x) + g(x) &\forall x \in [a, b] \\
(\lambda f)(x) &:= \lambda f(x) &\forall x \in [a, b]
\end{align}
By the algebra of continuous functions, $f + g$ and $\lambda f$ are both continuous on $[a, b]$.
Suppose $f, g, h$ are continuous on $[a, b]$. We must establish that $(f + g) + h = f + (g + h)$. That is, we must establish, for all $x \in [a, b]$,
$$((f + g) + h)(x) = (f + (g + h))(x).$$
Suppose $x \in [a, b]$. Using the definition of vector addition, as well as the associativity of real numbers, we get
\begin{align*}
((f + g) + h)(x) &= (f + g)(x) + h(x) &\ldots \text{ definition} \\
&= (f(x) + g(x)) + h(x) &\ldots \text{ definition} \\
&= f(x) + (g(x) + h(x)) &\ldots \text{ associativity} \\
&= f(x) + (g + h)(x) &\ldots \text{ definition} \\
&= (f + (g + h))(x) &\ldots \text{ definition}
\end{align*}
This holds for any $x \in [a, b]$, so $(f + g) + h = f + (g + h)$.
Finally, to establish the identity $\mathbf{0}$, we must specify what it is. We let $\mathbf{0}$ be the function that maps any $x \in [a, b]$ to $0$. This is a constant function, hence it is continuous. We now must prove it is an identity, that is, $\mathbf{0} + f = f$ for any $f$.
(In a wider sense, in order to establish $\mathbf{0}$ is truly an identity, we would also need to prove $f + \mathbf{0} = f$, but you'll be proving commutativity later, which will make this redundant.)
Suppose $f$ is continuous on $[a, b]$ and $x \in [a, b]$. Then,
$$(\mathbf{0} + f)(x) = \mathbf{0}(x) + f(x) = 0 + f(x) = f(x).$$
Therefore $\mathbf{0} + f = f$.
Now you can establish the rest! You don't necessarily need as much detail as I'm using while writing it out, but you do need to cover all the axioms.
You can't use the set of functions as scalars since they don't form a field. Functions that have zeroes somewhere don't have inverses. This has nothing to do with periodicity.
Restricting the scalars to functions that are never $0$ won't fix things. The sum of two such functions can have a root, so the set of those functions aren't closed under addition.
Your last PS is confusing, but hints at using the field of integers modulo a prime $p$ for the scalars. That will work: see the wikipedia entry on
finite fields
.
Best Answer
Yes, you're correct: It is the zero function that always returns $0$ for any input.