c语言求某年的一天是星期几
#include<stdio.h>intsubZeller(inty,intm,intd){if(m<3){y--;m+=12;}return(y+y/4-y/100+y...
#include <stdio.h>
int subZeller( int y, int m, int d )
{
if( m < 3 ) {
y--; m += 12;
}
return ( y + y/4 - y/100 + y/400 + ( 13*m + 8 )/5 + d )%7;
}
int main()
{
int year, month, day;
char *dayname[] =( "0","1","2","3"
,"4","5","6")
while( 1 ) {
printf( "年月日是?(yyyy/mm/dd)> " );
if( scanf("%d/%d/%d", &year, &month, &day) != 3 ) break;
printf( "--> %s\n", dayname[subZeller(year,month,day)] );
}
return 0;
}
这段c语言是指求某年某月某天是星期几,要是改成只求:1970-2017年之间的的某一年的 1月1日是星期几的话,该怎么改?
还有 y + y/4 - y/100 + y/400 + ( 13*m + 8 )/5 + d )%7 这个式子算出来的东西是什么? 展开
int subZeller( int y, int m, int d )
{
if( m < 3 ) {
y--; m += 12;
}
return ( y + y/4 - y/100 + y/400 + ( 13*m + 8 )/5 + d )%7;
}
int main()
{
int year, month, day;
char *dayname[] =( "0","1","2","3"
,"4","5","6")
while( 1 ) {
printf( "年月日是?(yyyy/mm/dd)> " );
if( scanf("%d/%d/%d", &year, &month, &day) != 3 ) break;
printf( "--> %s\n", dayname[subZeller(year,month,day)] );
}
return 0;
}
这段c语言是指求某年某月某天是星期几,要是改成只求:1970-2017年之间的的某一年的 1月1日是星期几的话,该怎么改?
还有 y + y/4 - y/100 + y/400 + ( 13*m + 8 )/5 + d )%7 这个式子算出来的东西是什么? 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询