今天是元旦,也是星期日,利用循环结构设计输出365天内的星期天的算法

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/06 00:26:55
今天是元旦,也是星期日,利用循环结构设计输出365天内的星期天的算法

今天是元旦,也是星期日,利用循环结构设计输出365天内的星期天的算法
今天是元旦,也是星期日,利用循环结构设计输出365天内的星期天的算法

今天是元旦,也是星期日,利用循环结构设计输出365天内的星期天的算法
1.设一个计数变量n;
2..用循环for(n=1;n31) { m++;n=1} }
if(m==4||m==6||m==9||m==11||)
{ n++; if(n>30) { m++;n=1} }
if(m==2)
{ n++; if(n>28) { m++;n=1} }
4.判断星期天的日期:if(n%7==1)输出m月n日;
算法可能要用语言描述,大概写个思路,

#include "stdio.h"
void main()
{
int year,day,month,date,a,b,c,week;
scanf("%d%d%d%d",&year,&month,&date,&a);
c=(date-1);
if((year%4==0&&year%100!=0)||year%400...

全部展开

#include "stdio.h"
void main()
{
int year,day,month,date,a,b,c,week;
scanf("%d%d%d%d",&year,&month,&date,&a);
c=(date-1);
if((year%4==0&&year%100!=0)||year%400==0)
b=29;
else
b=28;
switch(month)
{
case 1:day=c;break;
case 2:day=31+c;break;
case 3:day=31+b+c;break;
case 4:day=2*31+b+c;break;
case 5:day=2*31+30+b+c;break;
case 6:day=3*31+30+b+c;break;
case 7:day=3*31+2*30+b+c;break;
case 8:day=4*31+2*30+b+c;break;
case 9:day=5*31+2*30+b+c;break;
case 10:day=5*31+3*30+b+c;break;
case 11:day=6*31+3*30+b+c;break;
case 12:day=6*31+4*30+b+c;break;
}
if(((day%7)+a)<=7)
week=(day%7)+a;
else
week=(day%7)+a-7;
printf("week=%d\n",week);
}
通过键盘输入某年元旦是星期几(如2010年元旦是星期五),然后通过键盘输入该年的某月某日,能输出求这一天是星期几。

收起

1.设一个计数变量n;
2..用循环for(n=1;n<366;n++)判断;
3..在循环体内进行日期的推算:
设两个变量月和日:m和t;(初始化m=1;n=1)
.判断星期天的日期:if(n%7==1)输出m月n日