
c语言编程:已知2013年1月1日是周二,给定月日,输出周几(周日是0)
流程如下:0给定month,day1先设数组intdaysOfMonth[]={31,30,......}代表达每个月的总天数2i从0到month-2(month-2是因...
流程如下:
0 给定month,day
1 先设数组 int daysOfMonth[]={31,30,......}代表达每个月的总天数
2i 从0 到month-2(month-2 是因为数组从0 开始,且month 当前月的
值不能加),累加month 月之前的天数
3 再加上day,再减一(因为从元旦是1 月1 日),以上就是从元旦到该
日期的总天数
4 总天数%7+2(2013 年元旦为星期二)
5 以上所得结果再%7,即为结果 展开
0 给定month,day
1 先设数组 int daysOfMonth[]={31,30,......}代表达每个月的总天数
2i 从0 到month-2(month-2 是因为数组从0 开始,且month 当前月的
值不能加),累加month 月之前的天数
3 再加上day,再减一(因为从元旦是1 月1 日),以上就是从元旦到该
日期的总天数
4 总天数%7+2(2013 年元旦为星期二)
5 以上所得结果再%7,即为结果 展开
2013-05-29
展开全部
#include<stdio.h>
void main()
{
int year=2013,month,day,c=0,m;
int daysOfMonth[]={31,28,31,30,31,30,31,31,30,31,30,31};
char str[7][10]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
printf("\n从键盘输入开始日期,月 日\n");
scanf("%d%d",&month,&day);
for(m=0;m<month-1;m++)
c=c+daysOfMonth[m];
c=c+day-1;
printf("%s\n",str[(c+2)%7]);
}
void main()
{
int year=2013,month,day,c=0,m;
int daysOfMonth[]={31,28,31,30,31,30,31,31,30,31,30,31};
char str[7][10]={"星期天","星期一","星期二","星期三","星期四","星期五","星期六"};
printf("\n从键盘输入开始日期,月 日\n");
scanf("%d%d",&month,&day);
for(m=0;m<month-1;m++)
c=c+daysOfMonth[m];
c=c+day-1;
printf("%s\n",str[(c+2)%7]);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询