1182C语言--数日子

  
   

C语言实验——数日子

Time Limit: 1000ms   Memory limit: 65536K  有疑问?点这里^_^

题目描述

光阴似箭,日月如梭,大学的时间真是宝贵,要抓紧时间AC^_^。你知道今天是这一年第几天吗,掐指一算还是要算好久,呵呵还是让计算机来做吧。这里的问题就是让你来写一个程序,输入某年某月某日,判断这一天是这一年的第几天?

输入

输入数据有多组,第一行是数据的组数n,下面n行是n组数据,每组数据由3个正整数组成,分别为年、月、日,我们保证每组数据都是有效的日期。

输出

输出所输入的日期是这一年的第几天。

示例输入

2
2009 1 1
2008 1 3

示例输出

1
3

代码如下:
#include <stdio.h>
int main()
{
	int year, month, day, n, a, i;
	while(scanf("%d-%d-%d", &year, &month, &day)!=EOF)
	{
	if (year % 4 ==0 && (year % 100 != 0 || year % 400 == 0))
		a = 1;
	else
		a = 0;
	switch (month)
	{
	        case 1: printf("%d\n", day); break;
			case 2: printf("%d\n", 31 + day); break;
			case 3: printf("%d\n", 59 + day + a); break;
			case 4: printf("%d\n", 90 + day + a); break;
			case 5: printf("%d\n", 120 + day + a); break;
			case 6: printf("%d\n", 151 + day + a); break;
			case 7: printf("%d\n", 181 + day + a); break;
			case 8: printf("%d\n", 212 + day + a); break;
			case 9: printf("%d\n", 243 + day + a); break;
			case 10: printf("%d\n", 273 + day + a); break;
			case 11: printf("%d\n", 304 + day + a); break;
			case 12: printf("%d\n", 334 + day + a); break;
	}
	}
	return 0;

你可能感兴趣的:(C语言)