求日龄

题目描述

年龄是指一个人出生后以年为长度计算的时间整数值。

同理,日龄指一个人出生后以日为长度计算的时间整数值。

请求出给定日期出生的人,到2013年3月9日的日龄吧。

输入描述

一个日期,表示这个人的生日

输入日期一定在2013-3-9之前

输出描述

日龄

输入样例

2013-3-8

输出样例

1
#include<iostream>
#include<stdio.h>
using namespace std;
int main() {
	int a[12]= {31,28,31,30,31,30,31,31,30,31,30,31};
	int sum=0;
	int y,m,d;
	int i,j,k;
	scanf("%d-%d-%d",&y,&m,&d);
	if(y>2013) {
		return 0;
	} else if(y==2013&&m>3) {
		return 0;
	} else if(y==2013&&m==3&&d>=9) {
		return 0;
	}

	else {

		for(i=y; i<=2013; i++) {
			if( (i%4==0&&i%100!=0) || (i%400==0) ) {
				a[1]=29;
			}
			else
			a[1] = 28;

			for(j=m-1; j<12; j++) 
			{
				for(k=d; k<=a[j]; k++) 
				{
					if(i==2013&&j==2&&k==9) 
					{
						break;
					} 
					else 
					{
						sum++;
					}
				}
				if(i==2013&&j==2&&k==9) {

					break;
				}
				d=1;
			}
			if(i==2013&&j==2&&k==9) {

				break;
			}
			m=1;
		}
		cout<<sum<<endl;
	}
	return 0;

}

猜你喜欢

转载自blog.csdn.net/qq_40763929/article/details/83244939