You are getting 'c' in scalar context because of the behavior of the comma operator,
http://perldoc.perl.org/perlop.html#Comma-Operator.
To control how your sub returns values in a scalar or list context, see function
wantarray.
For your last question, you could do something like
my ($first, $third) = (get_values())[0,2];
Chris