c#从键盘输入你的生日,输出现在距离你的生日还多少日,以及生日那天是星期几;如果你的生日已过,给出相应提示
时间: 2024-03-23 08:39:44 浏览: 9
好的,以下是C#的代码实现:
```csharp
using System;
class Program {
static void Main(string[] args) {
Console.Write("请输入你的生日(格式为YYYY-MM-DD):");
string input = Console.ReadLine();
DateTime birthday = DateTime.Parse(input);
DateTime today = DateTime.Today;
if (birthday.Month == today.Month && birthday.Day == today.Day) {
Console.WriteLine("今天是你的生日!");
} else {
DateTime nextBirthday = new DateTime(today.Year, birthday.Month, birthday.Day);
if (nextBirthday < today) {
nextBirthday = nextBirthday.AddYears(1);
}
int daysLeft = (nextBirthday - today).Days;
Console.WriteLine("距离你的生日还有 {0} 天", daysLeft);
string weekday = nextBirthday.ToString("dddd");
Console.WriteLine("你的生日那天是星期{0}", weekday);
}
}
}
```
程序首先从键盘读取用户输入的生日,使用`DateTime.Parse`方法将输入的字符串转换为`DateTime`类型。然后获取当前日期,如果生日和今天是同一天,则输出“今天是你的生日!”;否则计算距离下一个生日的天数,并使用`DateTime.ToString`方法获取生日那天是星期几。如果下一个生日已经过去,则将计算得到的天数加上一年。