/*
*Copyright (c) 2014, 烟台大学计算机学院
*All rights reserved.
*文件名称:week11-project5.cpp
*作者:高赞
*完成日期:2014年 11 月 7 日
*版本号:v1.0
*
*问题描述:输入年月日,返回这一天为当年的第几天
*/
#include <iostream>
using namespace std;
int days(int y, int m, int d);
int main()
{
int year, month, day;
cout<<"输入年 月 日"<<endl;
cin>>year>>month>>day;
cout<<"这是该年的第"<<days(year, month, day)<<"天"<<endl;
return 0;
}
int days(int y, int m, int d)
{
int i,sumdays;
for (i=1; i<=m; ++i)
{
switch (i)
{
case 1:
sumdays=0;
break;
case 3:
{
if (((y%4 == 0 && y%100 != 0) || y%400 == 0))
sumdays+=29;
else sumdays+=28;
}
break;
case 2:
case 4:
case 6:
case 8:
case 9:
case 11:
sumdays+=31;
break;
case 5:
case 7:
case 10:
case 12:
sumdays+=30;
break;
}
}
sumdays+=d;
return(sumdays);
}
运算结果: