通過日期計(jì)算出星期
星期是固定的以7天作為周期進(jìn)行計(jì)算的,所以,只要通過日期獲取,具體的天數(shù),通過對7作為周期計(jì)算就可以獲取星期值了,具體的函數(shù)如下:
/**************************************************************************************
* FunctionName : GetWeek()
* Description : 通過日期獲取周
* EntryParameter : year, month, day - 日期
* ReturnValue : 返回周
**************************************************************************************/
U8 GetWeek(U8 year, U8 month, U8 day)
{
U8 i, y, m, d, weekDay;
U16 ti = 2000;
U32 days = 0;
y = (year >> 4) * 10 + (year & 0x0F);
m = (month >> 4) * 10 + (month & 0x0F);
d = (day >> 4) * 10 + (day & 0x0F);
for (i = 0; i
{
if ((ti % 4) == 0 && (ti % 100) != 0 || (ti % 400) == 0)
{
days += 366;
}
else
{
days += 365;
}
ti++;
}
for (i = 1; i
{
switch (i)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
{
days += 31;
break;
}
case 2:
{
ti = 2000 + y;
if ((ti % 4) == 0 && (ti % 100) != 0 || (ti % 400) == 0)
{
days += 29;
}
else
{
days += 28;
}
break;
}
case 4:
case 6:
case 9:
case 11:
{
days += 30;
break;
}
}
}
days += d;
weekDay = (days % 7) + 5;
weekDay %= 7;
return weekDay;
}
關(guān)鍵詞:
日期星
相關(guān)推薦
技術(shù)專區(qū)
- FPGA
- DSP
- MCU
- 示波器
- 步進(jìn)電機(jī)
- Zigbee
- LabVIEW
- Arduino
- RFID
- NFC
- STM32
- Protel
- GPS
- MSP430
- Multisim
- 濾波器
- CAN總線
- 開關(guān)電源
- 單片機(jī)
- PCB
- USB
- ARM
- CPLD
- 連接器
- MEMS
- CMOS
- MIPS
- EMC
- EDA
- ROM
- 陀螺儀
- VHDL
- 比較器
- Verilog
- 穩(wěn)壓電源
- RAM
- AVR
- 傳感器
- 可控硅
- IGBT
- 嵌入式開發(fā)
- 逆變器
- Quartus
- RS-232
- Cyclone
- 電位器
- 電機(jī)控制
- 藍(lán)牙
- PLC
- PWM
- 汽車電子
- 轉(zhuǎn)換器
- 電源管理
- 信號放大器
評論