⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 通信作业之日历.txt

📁 推算星期,万年历,输入日期推算出星期,日程提醒
💻 TXT
字号:
#include <stdio.h> 
#include <conio.h> 
#include <time.h>
/*打印菜单*/void printmenu(); 
/*星期*/	void xingqi(); 
/*纪念日*/  void jinianri();


int   week(int,int,int); 
int   monthday[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 

int main() 
{ 
   char menu; 
   do   { 
     printmenu(); 
     menu=getch(); 
     printf("%c\n",menu); 
     switch(menu)   { 
       case '1': xingqi(); break; 
       case '2': jinianri();break;
	   case '3': {time_t now;
				  now=time (NULL);
			      printf ("%s",ctime(&now));
				 }break;
       case '4': printf("谢谢使用");   break; 
       default:  printf("输入错误"); 
     } 
     printf("\n"); 
   } while(menu != '4'); 
   return 0; 
} 

void printmenu() 
{ 
   printf("1:星期查询\n"); 
   printf("2:纪念日提醒\n");
   printf("3:当前时间\n");
   printf("4:退出\n"); 
   printf("输入你的选择:"); 
} 

void xingqi() 
{ 
   int year,month,day,weekday; 
   char continueflag; 
   char *weekdaystr; 
   do   { 
     printf("请输入年月日(xxxx,xx,xx):"); 
     scanf("%d,%d,%d",&year,&month,&day); 
     weekday=week(year,month,day); 
     switch(weekday)   { 
       case 0:   weekdaystr="日"; break; 
       case 1:   weekdaystr="一"; break; 
       case 2:   weekdaystr="二"; break; 
       case 3:   weekdaystr="三"; break; 
       case 4:   weekdaystr="四"; break; 
       case 5:   weekdaystr="五"; break; 
       case 6:   weekdaystr="六"; break; 
     } 
     printf("%d年%d月%d日是星期%s,是否继续?(Y/N)",year,month,day,weekdaystr); 
     continueflag=getch(); 
     printf("%c\n",continueflag); 
   } while (continueflag=='y' || continueflag=='Y'); 

} 
void jinianri()
{
	printf ("生日:十二月二十八\n");
}




int week(int y,int m,int d) 
{    
/*使用基姆拉尔森计算公式*/ 
   if((m==1)||(m==2))   
   { 
     m+=12; 
     y--; 
   } 
   return ((d+2*m+3*(m+1)/5+y+y/4-y/100+y/400)+1)%7;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -