Since g o f is surjective and is a transformation from A->C, any c in C must have at least one element a in A such that g o f(a) = c. It could have more, but it has at least one.
Now let b be in B and be the result of f(a), thus f(a)=b. Since g o f(a) = c is surjective, g(b) is by substitution. So for every c in C, there exists b in B such that g(b)=c, thus g is a surjection.
That was just writing tonio's post into words. Hopefully it has no errors, but the idea is there.