Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

2-5玩日期

$
0
0
/*
 * 程序的版权和版本声明部分
 * 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 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>