/*
* 程序的版权和版本声明部分
* Copyright (c)2012, 烟台大学计算机学院学生
* All rightsreserved.
* 文件名称: fun.cpp
* 作 者:王飞
* 完成日期:2013 年3月 2日
* 版本号: v1.0
* 对任务及求解方法的描述部分:结构体语句解决天数问题
* 输入描述:略
* 问题描述:略
* 程序输出:如下
*/
#include <iostream>
using namespace std;
struct Date //声明结构体Date
{
int year;
int month;
int day;
};
int main()
{
Date date;
cout<<"Input year.month.day:"<<endl;
cin>>date.year>>date.month>>date.day;
int days,x=0,y=0,z=28; //数据的初始化
if((date.year%4==0&&date.year%100!=0)||(date.year%400==0)) //闰年判断
{
z=29;
}
switch(date.month) //对月份进行核对
{
case 1: x=0,z=0;break;
case 2: x=1,z=0;break;
case 3: x=1;break;
case 4: x=2;break;
case 5: x=2,y=1;break;
case 6: x=3,y=1;break;
case 7: x=3,y=2;break;
case 8: x=4,y=2;break;
case 9: x=5,y=2;break;
case 10: x=5,y=3;break;
case 11: x=6,y=3;break;
case 12: x=6,y=4;break;
}
days=31*x+30*y+z+date.day; //天数的计算公式
cout<<date.month<<"月"<<date.day<<"日是"<<date.year<<"年的第"<<days<<"天"<<endl;
return 0;
}
输出结果:
心得体会:
正如老师说的那样编程过程中脑袋是轻盈的,算法是需要慢慢积累的!