2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > C语言判断闰年计算某月的天数代码

C语言判断闰年计算某月的天数代码

时间:2019-01-16 18:44:01

相关推荐

C语言判断闰年计算某月的天数代码

题目:1、编写函数,内容:输入年份判断是否为闰年,返回真假值。2、编写函数:输入年月,返回这一月的天数。3、输入日,返回是这一年的第几天。(注意:判断输入年月是否有效)

闰年是能被4整除不能被100整除且能被400整除的年份。闰年2月有29天,非闰年有28天。

#include<stdio.h>bool LeapYear(int year){return (year % 4 == 0 && year % 100 != 0 || year % 400 == 0);}int Month(int year,int month){int Day[13] = {29,31,28,31,30,31,30,31,31,30,31,30,31 }; //查表if (2 == month && LeapYear(year)){month = 0;}return Day[month];}int Get_Daynum(int year, int month, int day){int sum = 0;for (int i = 1; i < month; i++){sum += Month(year, i);}sum += day;return sum;}int main(){int year, month, day;char ch = 0;do{printf("请输入年份:");scanf("%d", &year);printf("请输入月份:");scanf("%d", &month);printf("请输入日:");scanf("%d", &day);LeapYear(year);Month(year, month);Get_Daynum(year, month, day);if (year < 1){printf("输入年份有误!\n");}if (month > 12 || month < 1){printf("输入月份有误!\n");}if (day < 1 || day > Month(year,month)){printf("输入天数有误!\n");}printf("是否继续(y/n)?:");rewind(stdin);scanf("%c",&ch);} while (ch == 'y' || ch == 'Y');printf("%d年%d月有%d天\n这一天是这一年的第%d天。\n", year, month, Month(year, month), Get_Daynum(year, month, day));}

本文结束,感谢阅览!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。