计算某日是该年的第几天
2014-12-05 17:15
176 查看
要求:编写一个计算天数的程序,从键盘中输入年、月、日,在 屏幕中输出此日是该年的第几天
#include <stdio.h>
int leap(int a)
{
if(a%4==0&&a%100!=0||a%400==0)//判断是否为润年
return 1;
else
return 0;
}
int num(int year,int month,int day)
{
int sum=0,i,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};//数组a存放平年每月的天数
int b[12]={31,29,31,30,31,30,31,31,30,31,30,31};//数组b存放润年每月的天数
if(leap(year)==1)
{
for(i=0;i<month-1;i++)//判断是否为润年
sum+=b[i];//是润年就累加数组b前month-1个月份的天数
}
else
{
for(i=0;i<month-1;i++)
sum+=a[i];
//不是润年就累加数组a前month-1个月的天数
}
sum+=day;//将前面累加的结果加上日期,得出总天数
return sum;
}
main()
{
int year,month,day,n;
printf("输入年月日:");
scanf("%d%d%d",&year,&month,&day);
n=num(year,month,day);
printf("第%d天\n",n);
}
#include <stdio.h>
int leap(int a)
{
if(a%4==0&&a%100!=0||a%400==0)//判断是否为润年
return 1;
else
return 0;
}
int num(int year,int month,int day)
{
int sum=0,i,a[12]={31,28,31,30,31,30,31,31,30,31,30,31};//数组a存放平年每月的天数
int b[12]={31,29,31,30,31,30,31,31,30,31,30,31};//数组b存放润年每月的天数
if(leap(year)==1)
{
for(i=0;i<month-1;i++)//判断是否为润年
sum+=b[i];//是润年就累加数组b前month-1个月份的天数
}
else
{
for(i=0;i<month-1;i++)
sum+=a[i];
//不是润年就累加数组a前month-1个月的天数
}
sum+=day;//将前面累加的结果加上日期,得出总天数
return sum;
}
main()
{
int year,month,day,n;
printf("输入年月日:");
scanf("%d%d%d",&year,&month,&day);
n=num(year,month,day);
printf("第%d天\n",n);
}
相关文章推荐
- C语言算法实例014:计算某日是该年的第几天
- 计算某日是某年第几天
- 第三天、计算某日是该年的第几天
- 计算某日是改年的第几天
- 定义一个结构体变量(包括年月日)。计算某日在一年中是第几天?(注意还要有闰年的判断)
- 计算某日是该年的第几天
- 计算某日是该年的第几天
- 计算某日是该年的第几天——c语言算法实现
- 计算某日是该年第几天
- C语言 计算某年某日是该年的第几天 014
- 计算某月某日为一年中第几天
- C语言-计算某日是该年的第几天
- 第一周上机任务(计算某月某日是某年的第几天)
- 每日练之计算某日是该年的第几天
- C语言常用程序(1):计算某日是该年的第几天
- 用户输入一个日期计算是星期几以及是一年中的第几天
- 计算XX年的某月某日是当年的第多少天?是星期几?
- 第16周 oj Problem A: C语言习题 计算该日在本年中是第几天
- 第16周OJ实践1 计算该日在本年中是第几天
- C语言之计算某天为一年中第几天