107 lines
2.4 KiB
C++
107 lines
2.4 KiB
C++
#include<stdio.h>
|
|
int year1(int y)
|
|
{
|
|
if((y%4==0)&&(y%100!=0)||y%400==0)
|
|
return 366;
|
|
else
|
|
return 365;
|
|
}
|
|
int main(void){
|
|
int command;
|
|
printf("|-----------欢迎使用------------|\n");
|
|
printf("|1.查询对应的星期 |\n");
|
|
printf("|2.判断是否为闰年 |\n");
|
|
printf("|3.查询对应的日历 |\n");
|
|
printf("|4.退出 |\n");
|
|
printf("|-------------------------------|\n");
|
|
do{
|
|
printf("请输入您选择的功能:");
|
|
scanf("%d",&command);
|
|
switch(command)
|
|
{
|
|
case 1:
|
|
int year,month,day,week;
|
|
printf("请输入年月日(中间用空格分隔开):");
|
|
scanf("%d%d%d",&year,&month,&day);
|
|
if(month==1||month==2){
|
|
month+=12;
|
|
year--;}
|
|
week=(day+2*month+3*(month+1)/5+year+year/4-year/100+year/400)%7;
|
|
switch(week){
|
|
case 0:
|
|
printf("星期一\n");
|
|
break;
|
|
case 1:
|
|
printf("星期二\n");
|
|
break;
|
|
case 2:
|
|
printf("星期三\n");
|
|
break;
|
|
case 3:
|
|
printf("星期四\n");
|
|
break;
|
|
case 4:
|
|
printf("星期五\n");
|
|
break;
|
|
case 5:
|
|
printf("星期六\n");
|
|
break;
|
|
case 6:
|
|
printf("星期日\n");
|
|
break;
|
|
}
|
|
break;
|
|
case 2:
|
|
int x;
|
|
printf("请输入年份");
|
|
scanf("%d",&x);
|
|
if(x%4==0&&x%100!=0||x%400==0)
|
|
printf("闰年\n");
|
|
else
|
|
printf("不是闰年\n");
|
|
break;
|
|
case 3:
|
|
{
|
|
int y,i,j,sum=0,z;
|
|
int begin,week;
|
|
int days[12]={31,28,31,30,31,30,31,31,30,31,30,31};
|
|
printf("请输入年份:");
|
|
scanf("%d",&y);
|
|
printf("1.单列输出 2.双列输出\n");
|
|
printf("请输入:",z);
|
|
scanf("%d",&z) ;
|
|
if(z==1)
|
|
for(i=1;i<y;i++)
|
|
sum+=year1(i);
|
|
week=(sum+1)%7;
|
|
if(year1(y)==366)
|
|
days[1]=29;
|
|
printf("\n%d年日历如下:\n\n",y);
|
|
for(i=0;i<12;i++)
|
|
{
|
|
printf(" %d月 \n",i+1);
|
|
printf("周日 周一 周二 周三 周四 周五 周六\n");
|
|
printf("==================================\n");
|
|
begin=1;
|
|
for(j=0;j<week;j++)
|
|
printf("");
|
|
while(begin<=days[i])
|
|
{
|
|
printf("%5d",begin);
|
|
begin++;
|
|
week=(week+1)%7;
|
|
if(week%7==0)
|
|
printf("\n");
|
|
}
|
|
printf("\n\n");}
|
|
break;}
|
|
case 4:
|
|
printf("感谢您的使用,再见");
|
|
break;
|
|
default:
|
|
printf("无此功能,请再次输入\n");}
|
|
}
|
|
while(command!=4);
|
|
return 0;
|
|
}
|