2. (a) That's wrong. On these facts, C will not be able to enforce the contract against B.
The reason for this is that C is not a party to the contract that was entered into between A and B. This means that C does not acquire legally enforceable rights or duties under that contract. The rights and duties that are created by a contract are 'private', that is to say, they only exist between the contracting parties and everyone else is considered a stranger to that agreement. Only the contracting parties can enforce the contract. This, essentially, is what is known as the doctrine of privity of contract.