The type of id is c->c; it just returns the same thing it is given.
The type of const is a->b->a. In const id, a becomes c->c, so the type of const in this case becomes:
(c->c) -> b -> (c->c)
Now that you have applied this const function, i.e. you have passed id to it, then you are left with b -> (c->c).
PS: The type of const const id is a->b->a, and the type of const const const id is b->a->a, and so on!