【C补充】判断明天是哪一天(明天的日期)

一、概述

1.1 功能介绍

  • 随机输入一个有效日期,输出第二天的日期

1.2 重点

  • 该日期是否是某月最后一天?
  • 是否是闰二月?
  • 是否是最后一个月?

1.3 实现方法

  • 使用结构体,将年月日存储在一个结构变量中

二、代码

#include
#include						//引入bool类型struct date {							//结构标号date int year;int month;int day;
};int numberOfDays(struct date d);		//某月天数 
bool isLeap(struct date d);				//判断闰年 int main(int argc, char* const argv[]){struct date today, tommorow;printf("输入日期(年 月 日):"); scanf(" %i %i %i", &today.year, &today.month, &today.day);if( today.day != numberOfDays(today) ){		//比较天数, 判断是否最后一天  tommorow.day = 1;tommorow.month = today.month + 1;tommorow.year = today.year;}else if( today.month == 12 ){tommorow.day = 1;tommorow.month =1;tommorow.year = today.year + 1;}else {tommorow.day = today.day + 1;tommorow.month = today.month;tommorow.year = today.year;}printf("明天是 %i年%i月%i日.\n", tommorow.year, tommorow.month, tommorow.day);return 0;
}//判断本月天数 
int numberOfDays(struct date d)
{int days;				//记录本月天数 const int daysPerMonth[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};	//全年各月天数 if( d.month == 2 && isLeap(d) )days = 29;						//闰二月,取29天 elsedays =  daysPerMonth[d.month-1]; return days; 
}//判断闰年 
bool isLeap(struct date d)
{bool leap = false;//闰年:能被4整除但不能被100整除,或能被400整除 if( (d.year%4 == 0 && d.year%100 != 0) || d.year%400 == 0 )leap = true;return leap;
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部