C语言问题

编写程序:输入一个某人生日(年:y0、月:m0、日:d0),并输入当前的日期(年:y1、月:m1、日:d1),输出该人实际年龄。

#include <stdio.h>

void main()

{

  int biryear,Nowyear;

  int birmonth,Nowmonth;

  int birday,Nowday;

  int age;

  printf("Please input birthday:");

  scanf("%d%d%d",&biryear,&birmonth,&birday);

  printf("Please input NowTime:");

  scanf("%d%d%d",&Nowyear,&Nowmonth,&Nowday);

  age = Nowyear - biryear;

  printf("The age is %d\n",age);

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-01-29
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>

int main()
{
struct data
{
int year;
int month;
int day;
};
struct data *str1,*str2;
int age;
/*输入某人生日*/
printf("请输入您的生日:\n");
printf("年:\n");
scanf("%d",&str1->year);
printf("月:\n");
scanf("%d",&str1->month);
printf("日:\n");
scanf("%d",&str1->day);

/*输入当前日期*/
printf("请输入当前日期:\n");
printf("年:\n");
scanf("%d",&str2->year);
printf("月:\n");
scanf("%d",&str2->month);
printf("日:\n");
scanf("%d",&str2->day);

/*求出某人年龄*/
age=str2->year-str1->year;

/*输出某人生日、当前日期及年龄*/
printf("您的生日为:%d年%d月%d日\n",str1->year,str1->month,str1->day);
printf("当前日期为:%d年%d月%d日\n",str2->year,str2->month,str2->day);
printf("您的年龄为:%d",age);
getch();
return 0;
}

在WIN C下运行通过
第2个回答  2010-01-29
#include<stdio.h>
void main()
{
int year,month,day,a,b,c,a1,b1,c1;
printf("请输入出生日期\n");
scanf("%d%d%d",&year,&month,&day);
printf("请输入现在时间\n");
scanf("%d%d%d",&a,&b,&c);
a1=a-year;
b1=b-month;
c1=c-day;
if(b1>0)
printf("%d岁\n",a1+1);
else if(b1==0)
{
if(c1>=0)
printf("%d岁\n",a1+1);
}
else
printf("%d岁\n",a1);
}本回答被提问者采纳
第3个回答  2010-01-29
#include<stdio.h>
int main()
{ int birthYear;
int birthMonth;
int birthDay;
int nowYear;
int nowMonth;
int nowDay;
int age;
printf("请输入生日");
scanf("%d%d%d",&birthYear,&birthMonth,&birthDay);
printf("请输入当前日期");
scanf("%d%d%d",&nowYear,&nowMonth,&nowDay);
if(nowYear>birthYear)
{
age=nowYear-birthYear;
printf("实际年龄是%d",age);
return 0;
}
else
{
printf("wrong intput");
return 0;
}
}
第4个回答  2010-01-29
int old=y1-y0;
if(m0>m1){old-=1;}
相似回答