使用localtime计算当月第几周

楼主: jimmy10309 (我的桌子下有躲人)   2019-02-03 03:40:36
各位先进大家好 小弟最近趁著过年有空
在练习自己想的题目时遇到以下的问题
在使用localtime函数的时候
能显示出tm_wday与tm_mday两个参数
分别是星期几与当月的日期
想请问是否有办法在不用49个if的情况下
或是其他循环比大小的方式下
透过计算的方式求出今天是当月的第几周
ex.像是今年2月2号是第一周 2月3号是第二周
虽然感觉是很简单的七进位问题
想了很多天也google了一些关键字不过还是找不太到(有使用其他函数的方法)
谢谢大家
作者: lajji (喇机)   2019-02-03 07:32:00
干嘛不用datetime或strftime
作者: s860134 (s860134)   2019-02-03 09:28:00
我记得 datetime 有现成的吧 挖原始码看阿
作者: sherees (ShaunTheSheep)   2019-02-03 10:29:00
.dayofyear
作者: shala (沙罗)   2019-02-03 11:11:00
用算的话,先定义是周一还是周日分周用分周日当分组点就可以用查表法取出组序当周数
作者: TitanEric (泰坦)   2019-02-03 12:51:00
这个我有写过 我的计算方式是先算出那个月第一个礼拜几是哪一天 再用要算出的那天减去前面计算的 以周为单位就可以了
作者: cutekid (可爱小孩子)   2019-02-03 13:04:00
(今天的tm_mday - 1 + 月初的tm_wday)?7 + 1 = 答案上面的除法是整数运算那个问号是“除法”符号嗯,是 /
作者: TitanEric (泰坦)   2019-02-03 23:12:00
感谢楼上 就是这样~

Links booklink

Contact Us: admin [ a t ] ucptt.com