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

📄 leap.cpp

📁 判断是否闰年,判断某一天是此年的第几天, 计算一年的每月最后一天是该年的第几天
💻 CPP
字号:

#include "stdio.h" 
#include "conio.h"
/* 判断是否闰年,是返回1,否返回0 */
int leap(int year) 
{ 
    if(year%100==0) 
    { 
        return year % 400 == 0; 
    } 
    else 
        return year % 4 == 0;
}

/* 判断某一天是此年的第几天 */
int da(int year,int month,int day) 
{ 
    int days[12]={31,28,31,30,31,30,31,31,30,31,30,31}; 
    int i,n=0; 
    for(i=0;i<month-1;i++) 
        n+=days[i]; 
    n+=day;
    /* 如果是闰年,2月之后的日期要加1 */
    if(month>2) 
        n+=leap(year); 
    return n; 
}

/* 计算一年的每月最后一天是该年的第几天 */
void da2(int year)
{
    FILE *f;
    int i,n[12];
    int days[12]={31,28,31,30,31,30,31,31,30,31,30,31};
    for(i=0;i<12;i++)
        n[i]=da(year,(i+1),days[i]);
    /* 如果是闰年,二月最后一天加一 */
    n[1]+=leap(year);

    if((f=fopen("days.txt","w"))==NULL)
    {
        printf("Can not open file!\n");
       // exit(-1);
    }
    else
    {
        for(i=0;i<12;i++)
        fprintf(f,"%d ",n[i]);
    }
    fclose(f);
}

void main() 
{ 
    int year,month,day; 
    /* 读入年月日 */
    printf("input year,month,day:\n"); 
    scanf("%d%d%d",&year,&month,&day);

    /* 输出此日期是一年中的第几天 */
    printf("%d day in the year\n",da(year,month,day));
    /* 输出该年的每月最后一天是第几天到文件中 */
    da2(year);

    /* 读入一个字符,便于查看结果,可以注释掉 */
    getch(); 
}

⌨️ 快捷键说明

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