c语言输入一个人的生日(年月日),并输入当前日期(年月日),计算输出改学生的年龄

c语言输入一个人的生日(年月日),并输入当前日期(年月日),计算输出改学生的年龄算上平年闰年,(不满一岁就减去一岁)

#include<stdio.h>
void main(){
int startYear,endYear,startMonth,endMonth,startDay,endDay,i,p=0,r=0;
printf("请输入出生日期:");
scanf("%d,%d,%d",&startYear,&startMonth,&startDay);
printf("请输入现在日期:");
scanf("%d,%d,%d",&endYear,&endMonth,&endDay);
while(startYear>endYear||startMonth<0||startMonth>12||endMonth<0||endMonth>12){
printf("输入非法!\n");
printf("请输入出生日期:");
scanf("%d,%d,%d",&startYear,&startMonth,&startDay);
printf("请输入现在日期:");
scanf("%d,%d,%d",&endYear,&endMonth,&endDay);
}
if(startMonth>endMonth||startDay>endDay){
endYear-=1;
}
for(i=startYear;i<endYear;i++){
if((i%4==0&&i%100!=0)||i%400==0){
r++;
}else{
p++;
}
}
printf("该学生年龄是%d岁,经过了%d个平年,%d个闰年!\n",(endYear-startYear),p,r);
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-05-24
#include<stdio.h>
int main()
{int y1,m1,d1,y2,m2,d2,years;
scanf("%d%d%d",&y1,&m1,&d1);
scanf("%d%d%d",&y2,&m2,&d2);
years=y2-y1+(m2>m1||m2==m1&&d2>=d1);
printf("年龄=%d\n",years);
return 0;

}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网