Finally my philosophy degree comes in handy!
@CutMyLip has already provided a very nice solution. If we want to approach the puzzle with a theoretical framework in mind, we can employ Dynamic Epistemic Logic to model the situation.
Let there be 11 epistemic scenarios y_1, ..., y_11 corresponding to the possible ages. They are completely determined by their first and second digits. Assume we have two agents A and B. Initially (that is after C talked to A and B), two scenarios are epistemically indistinguishable for agent A if and only if they have the same first digit, and for B if and only if they agree on their second digit. The model thus looks as follows, where the arrows (red for A, orange for B) indicate that two scenarios are indistinguishable for an agent (reflexive arrows are omitted):
Now we get our first piece of incoming information, namely that A doesn't know which scenario is correct and furthermore knows that B also doesn't know. In the language of Epistemic Logic:
where the indexed box reads as "the agent knows that ...". If we want to update such that all agents incorporate the incoming information we have to delete all scenarios where this statement is false. In particular we have to delete all scenarios that have a red arrow to a scenario where B knows how old C is, which is the case in 38 and 57. Hence, we throw out 35, 36, 38, 51, 55, and 57 and obtain the following updated model:
Now the agents are informed that B knows how old C is. Expressed formally:
This statement is true only in scenarios 61, 45, 46 (there are no orange arrows to other scenarios in these). We get rid of the relevant scenarios and obtain:
Finally, A states that they know about C's age.
Updating our model for the last time, we get:
So, we have an answer to our question. Repeatedly updating our model according to the information sequentially revealed in the statement of the puzzle, we end up with 61 as the only possible scenario. Hence, C must be 61 years old.