标题:求解一道函数题
只看楼主
MangoQvQ
Rank: 1
等 级:新手上路
帖 子:9
专家分:0
注 册:2021-11-14
结帖率:66.67%
已结贴  问题点数:20 回复次数:2 
求解一道函数题
从键盘输入一个年、月、日,并输出距离下一个年份,即下一年的1月1日,还有几天;并判断今年是否为闰年。(要求自己编写sum_day函数用于求天数,编写leap函数判断今年是否为闰年并在主函数中调用这两个函数。)
搜索更多相关主题的帖子: 是否为 判断 闰年 编写 函数 
2021-11-14 21:09
diycai
Rank: 8Rank: 8
等 级:贵宾
威 望:19
帖 子:147
专家分:895
注 册:2021-5-18
得分:20 
程序代码:
#include <stdio.h>

int isLeapYear;

void leap(int year)
{
    if ( ((year%4)==0 && (year%100)!=0)
        || ((year%400)==0 && (year%3200)!=0)
        || (year%172800)==0
        )
    {
        isLeapYear = 1;
    }
    else
    {
        isLeapYear = 0;
    }
}

int sum_day(int month, int day)
{
    int list[] = {0,366,335,307,276,246,215,185,154,123,93,62,32};
    if (month<1 || month>12)
    {
        return -1;
    }
    return list[month]-day+((isLeapYear&&month<3)?1:0);
}

void main()
{
    int year, month, day;
    printf("输入一个年、月、日,例如 2021 11 15\n");
    scanf("%d%d%d", &year, &month, &day);
    leap(year);
    printf("距离下一个年份还有 %d 天,今年%s闰年\n", sum_day(month, day), isLeapYear?"":"不是");
}
2021-11-15 11:55
苏宇落
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2021-11-10
得分:0 
回复 2楼 diycai
拿去看看,谢谢
2021-11-18 20:00



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-507516-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.316335 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved