永发信息网

C语言万年历编程

答案:4  悬赏:30  手机版
解决时间 2021-08-18 11:19
  • 提问者网友:那叫心脏的地方装的都是你
  • 2021-08-17 18:01
C语言万年历编程
最佳答案
  • 五星知识达人网友:像个废品
  • 2021-08-17 18:26

#include<stdio.h>
#include<time.h>
  int leap (int year)//判断闰年
  {
   if(year%4==0&&year%100!=0||year%400==0)
    return 1;
    else return 0;
  }
  int days_month (int month,int year)//判断月
  {
    if(month==1||month==3||month==5||month==7||month==8||month==10||month==12)
    return 31;
    if(month==4||month==6||month==9||month==11)
    return 30;
    if(month==2&&leap(year)==1) return 29;
    else return 28;
  }
  int firstday(int month,int year)//判断年
  {
   int w;
    w=(1+2*month+3*(month+1)/5+year+year/4+year/400-year/100)%7+1;
    return w;
  }
main()
{
//调用系统时间
time_t tval;
   struct tm *now;
   tval = time(NULL);
   now = localtime(&tval);
   printf("现在时间: %4d年 %d月 %02d日 %d:%02d:%02d\n",  now->tm_year+1900, now->tm_mon+1, now->tm_mday,
    now->tm_hour, now->tm_min, now->tm_sec);
//调用结束
   int i,j=1,k=1,a,b,month,year;
    b=days_month(now->tm_mon+1,now->tm_year+1900);
    a=firstday (now->tm_mon+1,now->tm_year+1900);
    printf(" Sun Mon Tue Wed Thu Fri Sat \n");
    if(a==7)
{
  for(i=1;i<=b;i++)
  {
   printf("%4d",i);
    if(i%7==0)
   {
    printf("\n");
   }
  }
}
    if(a!=7)
{
  while (j<=4*a)
  {
   printf(" ");
    j++;
  }
    for(i=1;i<=b;i++)
  {
   printf("%4d",i);
    if(i==7*k-a)
   {
    printf("\n");
    k++;
   }
  }
}
printf("\n");
}


自己加入主题,时间。


祝你成功!不懂找我!

全部回答
  • 1楼网友:長槍戰八方
  • 2021-08-17 20:50

楼主,你编的万年历能用在自己电脑上不?能的话给我发一份

  • 2楼网友:十年萤火照君眠
  • 2021-08-17 20:14

真正的万年历  涉及了   数组    ... ...

可以查日期..

  • 3楼网友:一把行者刀
  • 2021-08-17 18:47
( ⊙o⊙ )哇,要是加上拓展功能能把人做死~~~~杯具啊,分这么少
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯