带正号的数不一定是正数,带负号的数不一定是负数,所以(1)错误;
任意一个正数,前面加上负号就是一个负数,所以②正确;
0不是正数,也补是负数,所以(3)错误;
大于0的数是正数,所以(4)正确;
字母a可表示正数,也可表示为负数,所以(5)错误.
故选:B.