如何使该程序正确计算我的年龄? (可能很简单,我是新手)

时间:2019-10-01 02:47:00

标签: c#

我正在编写一个小的控制台程序来计算您的年龄,稍后我将添加一些其他内容,但是问题是此代码无法正确计算年龄,它只是减去了实际年份-出生年份,但是如果您没有您的生日过了,但显示的年龄有误,我该如何在所有的日子和月份中计算这笔款项?我尝试了很多事情,但是没有用:(

是否可以使用if语句来做到这一点?

using System;
using System.Collections.Generic;
using System.Text;

namespace para_joel
{
    public class Person
    {
        public string name;
        public string surname;

        public int birthDay;
        public int birthMonth;
        public int birthYear;

        public int Age()
        {
            int actualYear = DateTime.Now.Year;
            int actualMonth = DateTime.Now.Month;
            int actualDay = DateTime.Now.Day;

            return actualYear - birthYear;
        }
    }
}

1 个答案:

答案 0 :(得分:-1)

您需要使用以下方式将Person的三个int属性转换为Datetime:

DateTime birthday = new DateTime(birthYear, birthMonth, birthDay);

然后,您需要将今天的日期转换为日期时间(不是我会怎么做,而是使用变量):

DateTime today = new DateTime(actualYear, actualMonth, actualDay);

然后您需要减去两个:

var age = today - birthday;

这将返回几天,因此,您需要除以365以得出年限,一旦达到这一水平,就可以根据需要进行舍入。