📄 leap.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 + -