If S is indeed a structure as you have defined, then
does indeed save the whole structure as one structure variable in the mat file. So you'll have to explain why you think it's not the case.
On the other hand, if you did:
save('data', '-struct', 's');
then this would save the field of the structure as individual variables, a, b, and c.