Part b doesn't mean that infinite groups don't have any subgroups -- it means that the condition, which you have proved sufficient for finite groups, does not work for infinite groups ie. if is an infinite group and is closed under then is not neccesarily a subgroup of .
Now, regarding part a:
Let . is closed under * and so . is finite , thus is finite (this is also why this condition is not sufficient for infinite groups) and both conclusions easily follow (inverse and identity).