Red de conocimiento informático - Computadora portátil - Calcule el número total de días desde la fecha de nacimiento hasta la fecha de cálculo usando c

Calcule el número total de días desde la fecha de nacimiento hasta la fecha de cálculo usando c

#include "stdafx.h"

#include

int GetDaysOfYear(int nYear)

{

si ((nAño%4 == 0 & & nAño% 100 != 0) || nAño%400 == 0)

{

Devuelve 366;

}

else

Devuelve 365;

}

int GetDaysOfMonth(int nMonth,int nYear )

{

cambiar(nMes)

{

caso 4:

caso 6:

caso 8 :

caso 11:

devolver 30;

caso 2:

if( GetDaysOfYear(nYear) == 365)

devuelve 28;

más

devuelve 29;

descanso;

predeterminado:

Retorno 31;

}

}

fecha de clase

{

público:

void Set(int n1=1900, int n2=1, int n3=1);

int operador -(fecha constante &v1);

int m_ nAño;

int m_nMes;

int m_nDía;

};

int fecha::operador -(fecha constante &v1)

{

int nCounter = 0;

int nAño = m_nAño - v1.m_nAño;

if(nAño == 0)

{

int nMes = m_nMes - v1.m_nMes;

if(nMes == 0)

return m_ nDía - v1 .m_nDay;

else if(m_nMonth >0)

{

for(int i=v1.m_nMonth+1; i

nCounter += GetDaysOfMonth (i,m_nYear);

nCounter += m_nDay;

nCounter += GetDaysOfMonth(v1.m_nMonth,v1.m_nYear) - v1 .m_nDay;

}

}

else if(nAño > 0)

{

for( int i=v1.m_nAño+1; i

nCounter+=GetDaysOfYear(i);

for(int i=1; i

nContador += GetDaysOfMon

th(i,m_nAño);

nCounter+=m_nDay;

for(int i=v1.m_nMonth+1; i<13; i++)

nCounter += GetDaysOfMonth(i,v1.m_nYear);

nCounter += GetDaysOfMonth(v1.m_nMonth,v1.m_nYear) - v1.m_nDay;

nCounter += GetDaysOfMonth(v1. m_nDay;

}

Devolver nCounter;

}

fecha nula::Establecer(int n1, int n2, int n3)

{

if(n1 > 999)

{

m_nAño = n1;

m_nMes = n2 ;<

m_nDay = n3

}

else

{

m_nMonth = n1; p>

m_nDía = n2;

m_nAño = n3;

}

}

void main()

{

fecha d1,d2;

d1.Set(1985,1,1); // Cumpleaños

d2.Set (2007,12,7); // Hoy

int nDays = d2 - d1;

printf("El cumpleaños falta %d días para hoy\n ",nDays);

}