7-4 你活了多少天
人生短暂,光阴如梭,绝大多数人活不到4万天,珍惜每一天,不负韶华。本程序根据输入的生日及当前日期计算已活得天数并输出。
输入格式:
输入在一行中给出生日及当前日期,按日期年月日输入,题目保证出生日期小于当前日期。
输出格式:
按You have lived n days.格式输出已活得天数,其中n是计算出的活的天数。
输入样例:
2001 10 1
2020 11 20
输出样例:
You have lived 6990 days.
输入样例:
2020 2 1
2020 3 1
输出样例:
You have lived 29 days.
#include
int main() {int y1,y2,m1,m2,d1,d2;int a[13]= {0,31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d %d %d",&y1,&m1,&d1);scanf("%d %d %d",&y2,&m2,&d2);int num=0,i,j,k;if((y2-y1)>1) {for(i=y1+1; i<=y2-1; i++) {if(i%400==0) {num=num+366;} else if(i%4==0&&i%100!=0) {num=num+366;} else num=num+365;}}if(y1%4==0&&y1%100!=0)a[2]=29;if(y1%400==0)a[2]=29;if(y1==y2) {for(i = m1+1; i<m2; i++) {num=num+a[i];}num = num+(a[m1]-d1)+d2;}a[2]=28;if(y1!=y2) {if(y1%4==0&&y1%100!=0)a[2]=29;if(y1%400==0)a[2]=29;for(i=m1+1; i<=12; i++) {num=num+a[i];}num=num+(a[m1]-d1);a[2]=28;if(y2%4==0&&y1%100!=0)a[2]=29;if(y2%400==0)a[2]=29;for(i=m2-1; i>=1; i--) {num=num+a[i];}num=num+d2;}printf("You have lived %d days.",num);return 0;
}
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
