计算年龄问题

发布时间 2023-04-21 21:52:06作者: 标志蛋挞

一问题描述:

定义一个Birthday类,其成员变量有3个整形变量(出生的年月日):year,month,day;提供构造方法对这3个成员变量进行初始化;成员函数有getAge(),其功能是实现计算到2017年12月25日时该Birthday对象的年龄。

二代码实现:

/*#include<stdio.h>
int main(void)
{
  int y,m,d;
  scanf("%d%d%d",&y,&m,&d);
  if(m==12&&d>25)
   y=2017-y-1;
  else
   y=2017-y;
  printf("%d",y);
}*/
#include<iostream>
using namespace std;
class Birthday{
  int year;
  int month;
  int day;
  int age;
public:
  void set(int y,int m,int d)
  {
    year=y;
    month=m;
    day=d;
  }
  void getAge()
  {
      if(month==12&&day>25)
        age=2017-year-1;
      else
        age=2017-year;
  }
  void get()
  {
    cout<<age;
  }
};
int main(void)
{
  int year,month,day;
  cin>>year>>month>>day;
  Birthday ob;
  ob.set(year,month,day);
  ob.getAge();
  ob.get();
}