c语言如何计算某一天到今天的天数 C语言编程(程序怎样编写):给定年、月、日,计算该日是该年的第几天,然后计算该日是星期几?

[更新]
·
·
分类:行业
4531 阅读

c语言如何计算某一天到今天的天数

C语言编程(程序怎样编写):给定年、月、日,计算该日是该年的第几天,然后计算该日是星期几?

C语言编程(程序怎样编写):给定年、月、日,计算该日是该年的第几天,然后计算该日是星期几?

#include ltstdio.hgt
int mon[]{31,28,31,30,31,30,31,31,30,31,30,31}
int leap_year(int n)
{
if(||(n@ ampamp n0!0))
return 1
else
return 0
}
int cal_dayCount(int year,int month,int day)
{
int i,sum
for(i0,sum0iltmonth-1i )
sum mon[i]
if(monthgt2)
sum day leap_year(year)
else
sum day
return sum
}
int cal_weekday(int year,int month,int day)
{
int y, c, m, d
int w
if (month gt 3)
{
m month
y year % 100
c year / 100
d day
}
else
{
m month 12
y (year - 1) % 100
c (year - 1) / 100
d day
}
w y y / 4 c / 4 - 2 * c (26*(m 1))/10 d - 1
if (w lt 0)
{
w 7 - (-w) % 7
}
else
{
w w % 7 //如果w等于0,表示为星期天
}
return w
}
int main()
{
int year,month,day
int dayCount0,i
printf(

星期一到星期日的公式?

A1输入起始日期 B1输入结束日期
C1至C7分别输入 星期一 至 星期日
D1输入公式
SUMPRODUCT((MOD(ROW(INDIRECT($A$1:$C$1)),7)MOD(ROW(A2),7))*1)
向下填充,即可
另外 上面公式 包含起始和结束日期
如果不想包含起始日期
就改为
SUMPRODUCT((MOD(ROW(INDIRECT($A$1 1:$C$1)),7)MOD(ROW(A2),7))*1)
至于解释要建立在你对 SUMPRODUCT MOD ROW INDIRECT 函数了解的基础上