
这是一个C语言课后习题
编写程序,输入一位学生的生日(年:y0、月:m0、日:d0);并输入当前的日期(年:y1、月:m1、日:d1);输出该生的实足年龄。...
编写程序,输入一位学生的生日(年:y0、月:m0、日:d0);并输入当前的日期(年:y1、月:m1、日:d1);输出该生的实足年龄。
展开
7个回答
展开全部
LZ你好,我写的是实足年龄呵呵,比如说2000.6.6日生,在2001.5.6周岁是0
#include <stdio.h>
struct date
{
int year;
int month;
int day;
};
struct stud
{
char name[20];
struct date birthday;
};
void main()
{
int old;
struct stud s[2];
printf("请输入一个学生的名字和生日:\n");
scanf("%s %d%d%d",s[1].name,&s[1].birthday.year,&s[1].birthday.month,&s[1].birthday.day);
printf("请输入当前的日期:\n\n");
scanf("%d%d%d",&s[2].birthday.year,&s[2].birthday.month,&s[2].birthday.day);
printf("该学生信息如下:\n");
printf("%s %d-%d-%d\n\n",s[1].name,s[1].birthday.year,s[1].birthday.month,s[1].birthday.day);
old=s[2].birthday.year-s[1].birthday.year;
if(s[2].birthday.month<s[1].birthday.month)
printf("该学生年龄=%d\n",--old);
else if(s[2].birthday.day<s[1].birthday.day)
printf("该学生实足年龄=%d",--old);
else
printf("该学生实足年龄=%d",old);
}
#include <stdio.h>
struct date
{
int year;
int month;
int day;
};
struct stud
{
char name[20];
struct date birthday;
};
void main()
{
int old;
struct stud s[2];
printf("请输入一个学生的名字和生日:\n");
scanf("%s %d%d%d",s[1].name,&s[1].birthday.year,&s[1].birthday.month,&s[1].birthday.day);
printf("请输入当前的日期:\n\n");
scanf("%d%d%d",&s[2].birthday.year,&s[2].birthday.month,&s[2].birthday.day);
printf("该学生信息如下:\n");
printf("%s %d-%d-%d\n\n",s[1].name,s[1].birthday.year,s[1].birthday.month,s[1].birthday.day);
old=s[2].birthday.year-s[1].birthday.year;
if(s[2].birthday.month<s[1].birthday.month)
printf("该学生年龄=%d\n",--old);
else if(s[2].birthday.day<s[1].birthday.day)
printf("该学生实足年龄=%d",--old);
else
printf("该学生实足年龄=%d",old);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我写了个,输入日期时用年-月-日格式。如果现在日期已经超过生日了那就是现在年份减去出生年,如果没到生日就是现在年份减去出生年后再减一。
假定输入的总是对的,所以没有对输入日期有效性进行检查。
#include<stdio.h>
int main(void)
{
int y0,m0,d0,y1,m1,d1;
puts("Input your birthday(yyyy-mm-dd):");
scanf("%d-%d-%d",&y0,&m0,&d0);
puts("Input the current date(yyyy-mm-dd):");
scanf("%d-%d-%d",&y1,&m1,&d1);
printf("Your age:%d\n",y1-y0-(m1<m0||m1==m0&&d1<d0));
return 0;
}
假定输入的总是对的,所以没有对输入日期有效性进行检查。
#include<stdio.h>
int main(void)
{
int y0,m0,d0,y1,m1,d1;
puts("Input your birthday(yyyy-mm-dd):");
scanf("%d-%d-%d",&y0,&m0,&d0);
puts("Input the current date(yyyy-mm-dd):");
scanf("%d-%d-%d",&y1,&m1,&d1);
printf("Your age:%d\n",y1-y0-(m1<m0||m1==m0&&d1<d0));
return 0;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int y0,m0,d0;
printf("请输入学生的出生日期(年月日):");
scanf("%d%d%d",&y0,&m0,&d0);
printf("请输入当前日期(年月日):");
int y1,m1,d1;
scanf("%d%d%d",&y1,&m1,&d1);
printf("\n该学生的年龄为%d岁\n",y1-y0);
}
void main()
{
int y0,m0,d0;
printf("请输入学生的出生日期(年月日):");
scanf("%d%d%d",&y0,&m0,&d0);
printf("请输入当前日期(年月日):");
int y1,m1,d1;
scanf("%d%d%d",&y1,&m1,&d1);
printf("\n该学生的年龄为%d岁\n",y1-y0);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2011-04-26
展开全部
不知道对否
#include<stdio.h>
main()
{
int y0,y1,m0,m1,d0,d1,age;
while(scanf("%d %d %d",&y0,&m0,&d0)!=EOF)
{
scanf("%d %d %d",&y1,&m1,&d1);
age=y1-y0;
if(m1<m0||(m1==m0&&d1<d0))
age--;
printf("该生周岁为:%d岁\n",age);
}
}
#include<stdio.h>
main()
{
int y0,y1,m0,m1,d0,d1,age;
while(scanf("%d %d %d",&y0,&m0,&d0)!=EOF)
{
scanf("%d %d %d",&y1,&m1,&d1);
age=y1-y0;
if(m1<m0||(m1==m0&&d1<d0))
age--;
printf("该生周岁为:%d岁\n",age);
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main(void)
{
int year1,year2,month1,month2,date1,date2;
printf("please input your birthday like 1990 10 1:");
scanf("%d %d %d",year1,month1,date1);
printf("please input current_time like 1990 10 1:");
scanf("%d %d %d",year2,month2,date2);
if(month2>month1)
{
printf("your age is %d",year2-year1);
}
else if(month2=month1&&date2>date1)
{
printf("your age is %d",year2-year1);
}
else
printf("your age is %d",year2-year1-1);
}
void main(void)
{
int year1,year2,month1,month2,date1,date2;
printf("please input your birthday like 1990 10 1:");
scanf("%d %d %d",year1,month1,date1);
printf("please input current_time like 1990 10 1:");
scanf("%d %d %d",year2,month2,date2);
if(month2>month1)
{
printf("your age is %d",year2-year1);
}
else if(month2=month1&&date2>date1)
{
printf("your age is %d",year2-year1);
}
else
printf("your age is %d",year2-year1-1);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询