/* * 程序的版权和版本声明部分 * Copyright (c)2013, 烟台大学计算机学院学生 * All rightsreserved. * 文件名称: date.cpp * 作 者:纪子龙 * 完成日期: 2013 年 3 月 8 日 * 版本号: v1.0 * 输入描述:年月日 * 问题描述:输出对应的那一天是这一年的第几天 * 输出:第几天 */ #include <iostream> using namespace std; struct Date { int year; int month; int day; int hour; int minu; long second; }; int sumday(int m); int main() { int days; long dseconds,yseconds; Date date; cout<<"please input year month day hour minu,second"<<endl; cin>>date.year>>date.month>>date.day>>date.hour>>date.minu>>date.second; if(date.month==1) days=date.day; if(date.month==2) days=31+date.day; if (date.year%4==0&&date.month>2) { if (date.month<8){ days=date.day+sumday(date.month)-1; }else{ days=date.day+sumday(7)+sumday(date.month-7)-1; } } if (date.year%4!=0&&date.month>2) { if (date.month<8){ days=date.day+sumday(date.month)-1; }else{ days=date.day+sumday(7)+sumday(date.month-7)-1; } } //求秒数 dseconds=(date.hour-1)*3600+(date.minu-1)*60+date.second; yseconds=(days-1)*3600*24+dseconds; cout<<date.month<<"月"<<date.day<<"日是"<<date.year<<"年的第"<<days<<"天."<<date.minu<<"分"<<date.second<<"秒是这一天的第"<<dseconds<<"秒,是这一年的第"<<yseconds<<"秒"<<endl; return 0; } int sumday(int m) { if (m-1==0) return 0; if ((m-1%2)==0) return 31+sumday(m-1); else return 30+sumday(m-1); } 运行结果:
作者:jizilong123 发表于2013-3-12 15:19:32 原文链接
阅读:62 评论:0 查看评论