📄 age.c
字号:
/*
LL 06.11.06
*/
# include <stdio.h>
struct data
{
int year;
int month;
int day;
} date;
struct data date,birthday;
void main(void)
{
struct data age;
int i;
int tmp;
printf("\r\nplease enter date(year,month,day):");
scanf("%d, %d, %d", &date.year, &date.month, &date.day);
printf("\r\nplease enter birthday(year,month,day):");
scanf("%d, %d, %d", &birthday.year, &birthday.month, &birthday.day);
if(birthday.year>date.year)
{
printf("\r\nNo age");
return;
}
else
{
if(birthday.month<=date.month && birthday.day<=date.day)
{
age.year=date.year-birthday.year;
age.month=date.month-birthday.month;
age.day=date.day-birthday.day;
}
else if(birthday.month>date.month && birthday.day>date.day)
{
tmp=date.month;
tmp--;
if(tmp==0)
tmp=12;
if(tmp==4 || tmp==6 || tmp==9 || tmp==11)
date.day+=30;
else if(tmp==2)
{
if(date.year%4==0 && date.year%100!=0 || date.year%400==0)
date.day+=29;
else
date.day+=28;
}
else
date.day+=31;
age.year=date.year-1-birthday.year;
age.month=date.month+11-birthday.month;
age.day=date.day-birthday.day;
}
else if(birthday.month>date.month && birthday.day<=date.day)
{
age.year=date.year-1-birthday.year;
age.month=date.month+12-birthday.month;
age.day=date.day-birthday.day;
}
else
{
tmp=date.month;
tmp--;
if(tmp==0)
tmp=12;
if(tmp==4 || tmp==6 || tmp==9 || tmp==11)
date.day+=30;
else if(tmp==2)
{
if(date.year%4==0 && date.year%100!=0 || date.year%400==0)
date.day+=29;
else
date.day+=28;
}
else
date.day+=31;
if(date.year%4==0 && date.year%100!=0 || date.year%400==0)
if(date.month>2)
age.day++;
age.year=date.year-birthday.year;
age.month=date.month-1-birthday.month;
age.day=date.day-birthday.day;
}
}
printf("\rthe birthday is %dyear %dmonth %dday\n",age.year,age.month,age.day);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -