1900年后星期几c语言,【图片】计算1900年元旦以后某天为星期几的程序还有待改进…没有对输入数据准确性作判断以及星期部分的显示未作中文转化处理【c语言吧】_百度贴吧...
发布日期:2021-06-27 04:24:54 浏览次数:6 分类:技术文章

本文共 1104 字,大约阅读时间需要 3 分钟。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

#include

/*1900-01-01:星期一,求往后的某年某月某日为星期几*/

#define END 5 //控制程序执行次数

int main()

{

int run=0; //用来控制go to语句执行次数

Again: //go to 语句标签

int leap(int year,int month); //声明计算经历闰年闰月次数的函数

int count=0; //存放经历闰年闰月的次数

int n=0; //存放相距1900年共经历多少个年头

int sum_day=0; //存放输入的年份相距1900年元旦的天数

int day=0; //日子

int days; //存放相距1900年元旦共经历的天数

int y,m,d,w;

scanf("%d-%d-%d",&y,&m,&d); //输入格式样例:2004-01-01

n=y-1900;

count=leap(y,m); //调用leap函数

sum_day=n*365+count;

switch(m-1)

{

case 11:day+=30;

case 10:day+=31;

case 9:day+=30;

case 8:day+=31;

case 7:day+=31;

case 6:day+=30;

case 5:day+=31;

case 4:day+=30;

case 3:day+=31;

case 2:day+=28;

case 1:day+=31;

case 0:{ day+=0;

days=day+d+sum_day; //计算经历的总天数

w=(days % 7); //总天数与7求余,余几则是星期几

if(w==0) w+=7; //余0则是星期日

printf("%d-%d-%d是星期:%d\n\n",y,m,d,w);

}break;

default :printf("输入数据有误");break;

}

run+=1;

if(run

return 0;

}

int leap(int year,int month) //定义计算经历闰年闰月次数的函数

{

int i,count=0;

for(i=1900;i<=year;i++)

if((i%4==0&&i%100!=0)||i%400==0)

count++;

if(((year%4==0&&year%100!=0)||year%400==0)&&month<3)

count-=1; //若输入的年份刚好是闰年且月份小于3则经历次数应当减去1

return(count);

}

转载地址:https://blog.csdn.net/weixin_42166105/article/details/117205889 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:C语言怎么求三个区间的交集并集,C语言实现集合的求交集,求并集,求补集
下一篇:c语言指针访问十个数,C语言的二维数的指针访问.doc

发表评论

最新留言

路过,博主的博客真漂亮。。
[***.116.15.85]2024年03月23日 10时16分57秒