编程序实现如下功能:输入任意一个年份和月份,按以下格式输出该月份的公历日历。 要求由程序计算出来该月

2024-12-05 05:46:10
推荐回答(2个)
回答1:

#include
void main()
{
int year,monthmax,m,i,j,d;
printf("请输入年份:\n");
scanf("%d",&year);
printf("请输入月份:\n");
scanf("%d",&m);
if(year%4==0||(year%100==0&&year%400==0))
{
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
monthmax=31;
if(m==2)
monthmax=29;
if(m==4||m==6||m==9||m==11)
monthmax=30;
}
if(year%4!=0)
{
if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)
monthmax=31;
if(m==2)
monthmax=28;
if(m==4||m==6||m==9||m==11)
monthmax=30;
}

if(m==1||m==2)
{
m+=12;
year--;
}
d=(2+2*m+3*(m+1)/5+year+year/4-year/100+year/400)%7;

printf(" %d年日历\n",year);
printf(" ==========\n");
printf(" %d月\n",m);
printf("----------------------------------------\n");
printf(" 日 一 二 三 四 五 六\n");
for(j=0;j printf(" ");
for(i=1;i<=monthmax;i++)
{
printf("%5d",i);
if((d+i)%7==0)
printf("\n");
}
printf("\n");
printf("----------------------------------------\n");
}

回答2:

截取字符串