此代码基于C++语言。
//题目:输入一个日期,算出这一天是这一年的第几天
#include <iostream>
int is_LeapYear(int year)
{
if (year%400==0 || (year%100!=0 && year%4==0))
return 1; // 是闰年
return 0; //不是闰年
}
int main()
{
int year , month , day;
std::cout<<"请输入年份:";
std::cin>>year;
std::cout<<"\n请输入合法的月份:";
std::cin>>month;
std::cout<<"\n请输入合法的日期:";
std::cin>>day;
fflush(stdin);
int count = 0;
for (int i = 1; i < month; ++i)
{
switch(i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: count = count + 31; break;
case 2: count = count + 28 + is_LeapYear(year); break;
case 4:
case 6:
case 9:
case 11: count = count + 30; break;
default: std::cout<<"程序出错!\n"; break;
}
}
count = count + day;
std::cout<<"\n你输入的日期是该年的第 "<<count<<"天\n";
return 0;
}
2015年11月10日