vc 获取月份的天数_根据距离1900年1月1日的天数(0起始),计算这一天的日期(年,月,日)…

vc 获取月份的天数_根据距离1900年1月1日的天数(0起始),计算这一天的日期(年,月,日)…我的代码,算法不优美,但结果正确^_^#include#include#includevoidfoo(int&year,int&month,int&day){year=1900;month=1;day+=0;for(intn;n=(((year%4==0&&year%100!=0)||(year%400==0))…


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

我的代码,算法不优美,但结果正确 ^_^

#include

#include

#include

void foo( int& year, int& month, int& day )

{

year = 1900;

month = 1;

day += 0;

for( int n; n=(((year%4==0 && year%100!=0)||(year%400==0))?366:365), day>=n; day-=n, ++year );

static int m[12] = { 31,0,31,30,31,30,31,31,30,31,30,31 };

m[1] = ( ((year%4==0 && year%100!=0)||(year%400==0)) ? 29 : 28 );

for( int i=0; day>=m[i]; day-=m[i], ++i, ++month );

++day;

}

int main()

{

for( int i=25567; i<=38555; ++i ) // 从1970/01/01测试到2005/07/24

{

int year;

int month;

int day = i;

foo( year, month, day );

printf( “%04d/%02d/%02d — “, year, month, day );

time_t t1 = (i-25567)*24*3600;

tm* t2 = gmtime( &t1 );

printf( “%04d/%02d/%02d\n”, t2->tm_year+1900, t2->tm_mon+1, t2->tm_mday );

if( year!=t2->tm_year+1900 || month!=t2->tm_mon+1 || day!=t2->tm_mday )

{

printf( “ERR: %d\n”, i );

_getch();

}

}

return 0;

// ABB中 38555 输出为 2005/7/22

// 事实上应该输出为 2005/7/24

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/170090.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • 永久免费内网穿透很简单,一看就明白(长文)

    永久免费内网穿透很简单,一看就明白(长文)对于网络用户来说,一定都经历过出门在外无法直接在外网访问内网、或是难以部署异地远程桌面,因此心急如焚的情况;对于企业来说,无论是财务管理软件难以将分店信息同步到总部进行统计汇总、还是员工出差在外或在家里就不能访问企业内部办公系统,都极大地影响了公司整体效率;对于个人开发者来说,微信小程序或者在线支付系统等开发环境往往需要一个可以外部访问的公网环境进行调试,而大多数的企业网络都被运营商做了转发设置,…

    2022年6月22日
  • android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParams

    android.widget.RelativeLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParamsFrameLayout的父控件是一个LinearLayout控件,问题出在,LinearLayout为子控件分配空间的时候,获取FrameLayout的LayoutParams的必须为LinearLayout.LayoutParams,而非FrameLayout.LayoutParams。     简单的举个栗子说明一下:最外层有ReLativeLayoutA,里面有两个Lin

    2022年7月17日
  • sql server2008安装教程win10_sql数据库2008安装教程

    sql server2008安装教程win10_sql数据库2008安装教程SQLServer2008安装教程第一步,打开文件,点击开始安装;第二步,打开后点击左边项的安装,选择右边第一项;第三步,点击确定;第四步,选择接受服务条款,点击下一步;第五步,按着一般操

    2022年8月5日
  • latex中的括号怎么打_小括号和中括号的简便算法

    latex中的括号怎么打_小括号和中括号的简便算法https://blog.csdn.net/han____shuai/article/details/49679335功能语法显示不好看    (\frac{1}{2})好一点\left(\frac{1}{2}\right)您可以使用\left和\right来显示不同的括号:功能语法显示圆括号,小括号\left( \frac{a}{b}\right)方括号,中括号\left[ \frac…

    2022年10月11日
  • taglib配置_tablib

    taglib配置_tablibtld文件放入META-INF中取名taglib.tldweb.xml中配置     XXXX   /WEB-INF/lib/包名.jar   

    2022年10月28日
  • SkeyePlayer RTSP播放器源码解析系列之H264一帧多NAL写MP4录像花屏问题解决方案

    SkeyePlayer RTSP播放器源码解析系列之H264一帧多NAL写MP4录像花屏问题解决方案接上一篇[SkeyePlayer源码解析系列之录像写MP4]之续篇,我们来讲解一下关于H264编码格式中的一帧多nal(NetworkAbstractLayer,即网络抽象层),关于H264和NAL,这里引用一段话来科普一下:【转】在H.264/AVC视频编码标准中,整个系统框架被分为了两个层面:视频编码层面(VCL)和网络抽象层面(NAL)。其中,前者负责有效表示视频数据的内容,而后者则负责格式化数据并提供头信息,以保证数据适合各种信道和存储介质上的传输。因此我们平时的每帧数据就是一个NAL单元

    2022年10月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号