a and b are countable
c and d are uncountable
Naturals are an infinite yet countable set and Integers are equivalent to Naturals, which means that Integers are countable as well, so any set within Integers is also countable, which is why a and b are countable.
Reals are never countable, because whatever decimal you get, you can always add infinite digits behind that decimal.