It is impossible for something to have a negative heat capacity, as the definition of heat capacity is the heat required to raise the temperature of a substance by 1 degree. No material will lose heat trying to increase its temperature, meaning that you can never have a negative heat capacity.
Does specific heat have to be positive?
Yes, heat capacity always has a positive value. It is the amount of energy (heat) required to raise the temperature of the system.
Can specific heat of a gas be negative Why?
No, specific heat of a gas can't be negative. It is always positive.