Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
尝试在c#中实现,用户进入他们的年龄,并告诉他们出生在哪一年_C#_Date_Date Of Birth - Fatal编程技术网

尝试在c#中实现,用户进入他们的年龄,并告诉他们出生在哪一年

尝试在c#中实现,用户进入他们的年龄,并告诉他们出生在哪一年,c#,date,date-of-birth,C#,Date,Date Of Birth,这是我到目前为止的代码,我现在被卡住了 static void Main(string[] args) { int age = 0; DateTime now = DateTime.Today; Console.WriteLine("What is your age?"); age = Convert.ToInt32(Console.ReadLine()); } 一个简单的方法是创建

这是我到目前为止的代码,我现在被卡住了

    static void Main(string[] args)
    {
        int age = 0;
        DateTime now = DateTime.Today;

        Console.WriteLine("What is your age?");
        age = Convert.ToInt32(Console.ReadLine());

    }

一个简单的方法是创建一个字符串变量,它是一个console.readline,将字符串转换为和int(age),然后从当前年份中减去age,这个等式的结果就是他们出生的年份。然而,这仍然不是完美的,因为如果你还没有过生日,那可能是一年后

String stringAge = Console.ReadLine();
int age = Convert.ToInt32(stringAge);
//year is 2021
int result = age-2021;

请详细说明是什么阻碍了你。你有什么问题?如前所述。说明您遇到的具体问题。给出一个可重复的例子,以及期望的输出结果。这将使人们更容易帮助你。根据他们今年是否过生日,他们出生在哪一年总是模棱两可的year@KeithNicholas如果他们以毫秒为单位输入他们的年龄,则不会…:我想你在找
int yearBorn=DateTime.Now.AddYears(-age).Year
(注意,我们加上了他们年龄的负数,因为没有
减去年份的方法)。但是正如@KeithNicholas所说的,如果他们还没有过生日,你必须在结果上加上一个。或者你可以说
Console.WriteLine($“你出生在{yearBorn}(或者{yearBorn+1},如果你还没有过生日”);
我32岁,我不是1989年出生的。