#include <stdio.h>
void main()
{
long year,month,day;
long totalday;
int week;
int monthday[12]={0,31,59,90,120,151,181,212,243,273,304,334};//什么意思?
int monthdayLeap[12]={0,31,60,91,121,152,182,213,244,274,305,335};//什么意思?
char * weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};//这个指针是什么意思?
printf("Please input Year Month Day:");
scanf("%ld %ld %ld",&year,&month,&day);
totalday=(year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400;//这条语句是什么意思?
if((year%4==0)&&(year%100!=0)||(year%400==0))
totalday+=monthdayLeap[month-1];
else
totalday+=monthday[month-1];
totalday+=day;
week=totalday%7;//知道了week,怎么输出星期几?
printf("%ld,%s\n",totalday,weekname[week]);
}
C语言。求指教!请帮我写一下程序注释解释一下。已知公元1年1月1日是星期一。计算输入的年月日是星期几。
答案:3 悬赏:0
解决时间 2021-11-14 18:48
- 提问者网友:沉默的哀伤
- 2021-11-14 09:05
最佳答案
- 二级知识专家网友:而你却相形见绌
- 2021-11-14 09:55
int monthday[12]={0,31,59,90,120,151,181,212,243,273,304,334};//平常年份到该月1号之前共有多少天,1月1号之前0天 3月1号之前59天
int monthdayLeap[12]={0,31,60,91,121,152,182,213,244,274,305,335};//闰年到x月1号多少天
char * weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};//是指针的数组,不是指针,数组的每个成员是一个指针指向星期几的英语,用于最后的输出
printf("Please input Year Month Day:");
scanf("%ld %ld %ld",&year,&month,&day);
totalday=(year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400;//计算迄今为止每年365天一共多少天加上闰年的个数(每个闰年增加天,被4整除是闰年 被100整除的不是 被400整除的是)
if((year%4==0)&&(year%100!=0)||(year%400==0))
totalday+=monthdayLeap[month-1];
else
totalday+=monthday[month-1];
totalday+=day;
week=totalday%7;//总共的天数对7求模得到余数
printf("%ld,%s\n",totalday,weekname[week]);
}
int monthdayLeap[12]={0,31,60,91,121,152,182,213,244,274,305,335};//闰年到x月1号多少天
char * weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};//是指针的数组,不是指针,数组的每个成员是一个指针指向星期几的英语,用于最后的输出
printf("Please input Year Month Day:");
scanf("%ld %ld %ld",&year,&month,&day);
totalday=(year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400;//计算迄今为止每年365天一共多少天加上闰年的个数(每个闰年增加天,被4整除是闰年 被100整除的不是 被400整除的是)
if((year%4==0)&&(year%100!=0)||(year%400==0))
totalday+=monthdayLeap[month-1];
else
totalday+=monthday[month-1];
totalday+=day;
week=totalday%7;//总共的天数对7求模得到余数
printf("%ld,%s\n",totalday,weekname[week]);
}
全部回答
- 1楼网友:时光挺欠揍
- 2021-11-14 11:30
#include <stdio.h>
void main()
{
long year,month,day;
long totalday;
int week;
int monthday[12]={0,31,59,90,120,151,181,212,243,273,304,334};//monthday数组初始化
int monthdayLeap[12]={0,31,60,91,121,152,182,213,244,274,305,335};//monthdayLeap数组初始化
char * weekname[7]={"Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"};//这是个指针数组,你也可以看成一个二维数组
printf("Please input Year Month Day:");
scanf("%ld %ld %ld",&year,&month,&day);
totalday=(year-1)*365+(year-1)/4-(year-1)/100+(year-1)/400;//总天数
if((year%4==0)&&(year%100!=0)||(year%400==0))
totalday+=monthdayLeap[month-1];
else
totalday+=monthday[month-1];
totalday+=day;
week=totalday%7;//知道了week,怎么输出星期几?//下面那条语句就是输出星期几的
printf("%ld,%s\n",totalday,weekname[week]);//这个就是输出星期几的地方
}
- 2楼网友:而你却相形见绌
- 2021-11-14 11:15
#include <stdio.h> #include <windows.h> int main() { char szbuffer[512]; // 这个不用解释 dword nsize = sizeof( szbuffer ); // 这个sizeof是求出szbuffer大小,下面的这个函数需要用到它 getcomputername( szbuffer, &nsize );// 这个是获取计算机名的一个api,用法下面给你解释 printf( "本机的计算机名是: %s\n", szbuffer ); // 这个也不用解释了 }
getcomputername 的原型是
bool getcomputername( lptstr lpbuffer, lpdword lpnsize );
参数用法:
输出用的,获取到计算机名后给你存放到这个参数中
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯