I am working on some medical software and I am required to output all ages in a very specific manner, based on the following rules:
If under 6 Weeks old :
You can get an object representing the user's current age with a simple subtraction:
TimeSpan age = DateTime.Now - dateOfBirth;
And then it's just a matter of doing a bunch of if clauses
if (age.TotalDays < 6 * 7) // 6 weeks
// ...
else if (age.TotalDays < 6 * 30) // 6 months
// ...
// et cetera
You should be able to figure out how to do your formatting.