C program for age calculator.

#include <stdio.h>
#include <time.h>
int isLeapYear(int year, int mon) 

{
    int flag = 0;
    if (year % 4 == 0)
    {
            if (mon == 2)
            {
                    flag = 1;
            }
    }
    return (flag);
}
int main()
{
    int DaysInMon[] = {31, 28, 31, 30, 31, 30,
                       31, 31, 30, 31, 30, 31};
    int days, month, year;
    char dob[100];
    time_t ts;
    struct tm *ct;
    printf("Enter your date of birth (DD/MM/YYYY): ");
    scanf("%d/%d/%d",&days,&month, &year);
    ts = time(NULL);
    ct = localtime(&ts);
    printf("Current Date: %d/%d/%d\n",
            ct->tm_mday, ct->tm_mon + 1, ct->tm_year + 1900);
    days = DaysInMon[month - 1] - days + 1;
    if (isLeapYear(year, month))
    {
            days = days + 1;
    }
    days = days + ct->tm_mday;
    month = (12 - month) + (ct->tm_mon);
    year = (ct->tm_year + 1900) - year - 1;
    if (isLeapYear((ct->tm_year + 1900), (ct->tm_mon + 1)))
    {
            if (days >= (DaysInMon[ct->tm_mon] + 1))
            {
                    days = days - (DaysInMon[ct->tm_mon] + 1);
                    month = month + 1;
            }
    }
    else if (days >= DaysInMon[ct->tm_mon])
    {
            days = days - (DaysInMon[ct->tm_mon]);
            month = month + 1;
    }
    if (month >= 12)
    {
            year = year + 1;
            month = month - 12;
    }
    printf("\n**Hey,you are  %d years %d months and %d days old.**\n", year, month, days);
    return 0;
}
     

*** Input && Output ***



Post a Comment

0 Comments