Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1567624
  • 博文数量: 354
  • 博客积分: 8137
  • 博客等级: 中将
  • 技术积分: 5137
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-26 15:40
文章分类

全部博文(354)

文章存档

2010年(300)

2009年(54)

分类: C/C++

2010-06-29 07:29:25

//给出年、月、日计算该日是该年的第几天

#include <stdio.h>
#include <stdlib.h>

int sum_day(int month, int day);
int leap(int year);

int main(int argc, char *argv[])
{
    int year, month, day;
    int days;
    printf("请输入日期(年,月,日):");
    scanf("%d, %d, %d", &year, &month, &day);
    printf("%d年%d月%d日", year, month, day);

    days = sum_day(month, day);
    if(leap(year) && month >= 3)
        days = days + 1;
    printf("是该年的第%d天。\n",days);

    system("pause");
    return 0;
}

static int day_tab[13] = {0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};

int sum_day(int month, int day)
{
    int i;
    for(i = 1; i < month; i++)
        day = day + day_tab[i];

    return day;
}

int leap(int year)
{
    int leap;
    leap = (year%4 == 0&&year%100 != 0)||(year%400 == 0);
    return leap;
}


阅读(657) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~