我必须编写一个程序,从控制台读取生日日期(格式为MM.DD.YYYY),并在10年内打印当前年龄和年龄。
这是我的第一个代码,在我看来,它看起来太蹩脚了。我相信有一种更好的方法来写这篇文章,所以我想请你就如何优化代码提出建议。
using System;
namespace Age
{
class Age
{
static void Main()
{
string birthDayAsk;
Console.WriteLine("Date format: MM.DD.YYYY");
birthDayAsk = Console.ReadLine();
DateTime birthday = DateTime.Parse(birthDayAsk);
DateTime today = DateTime.Today;
int age = today.Year - birthday.Year;
if ((birthday.Month > today.Month) || ((birthday.Month == today.Month) && (birthday.Day > today.Day)))
{
age = age - 1;
Console.WriteLine(age);
}
else
{
Console.WriteLine(age);
}
Console.WriteLine(age + 10);
}
}
}
我认为最好使用TimeSpan来计算两个日期之间的差异确定两个日期的跨度
还要添加年份do age.AddYears(10);