C语言作业,同学问我不会,希望达人给出解答Description输入“年 月 日” ,输出这个日期的下一天的日期Input三个整数 比如 1992 6 30 (用空格分隔)Output1992 年6月 30日的下一天的三个数字 1992 7 1Sa

来源:学生作业帮助网 编辑:作业帮 时间:2024/07/07 16:56:13
C语言作业,同学问我不会,希望达人给出解答Description输入“年 月 日” ,输出这个日期的下一天的日期Input三个整数 比如 1992 6 30 (用空格分隔)Output1992 年6月 30日的下一天的三个数字 1992 7 1Sa
xTMOQ]?64mB6a1ä R4Fh0TpBPK/ffZVﻯЖ,Ҥy_ܙ9suPm˱w$wcݭV{׎ҩc^Fé՚ݵZf|GO/f&l/ {|U;xo;7yS~>"8kٌcx֑uA},V` Tfy_>ӝYt?A )>Y!jElN>JF>4 _&Y#HB8 C9-i&t_62ʆ@v\hʇ~5~w2N+\=F$'1"QY-ʰ(2gu=n,$:9q#I-n]KIe#XZV""^Ќ%"o\QO0@wyR2˩LR%an±˸TޛKًi kLAdtE:lDZ`Ns7PYͯAHCݽpJ|8]\f Wg{7|Sz&2@n>J1?x\L

C语言作业,同学问我不会,希望达人给出解答Description输入“年 月 日” ,输出这个日期的下一天的日期Input三个整数 比如 1992 6 30 (用空格分隔)Output1992 年6月 30日的下一天的三个数字 1992 7 1Sa
C语言作业,同学问我不会,希望达人给出解答
Description
输入“年 月 日” ,输出这个日期的下一天的日期
Input
三个整数 比如 1992 6 30 (用空格分隔)
Output
1992 年6月 30日的下一天的三个数字 1992 7 1
Sample Input
1992 6 30
Sample Output
1992 7 1
Sample Input
2001 12 31
Sample Output
2002 1 1
Sample Input
2000 2 28
Sample Output
2000 2 29
Sample Input
2001 2 28
Sample Output
2001 3 1
HINT
闰 年2月有29日,平年没有,
6月等没有31日

C语言作业,同学问我不会,希望达人给出解答Description输入“年 月 日” ,输出这个日期的下一天的日期Input三个整数 比如 1992 6 30 (用空格分隔)Output1992 年6月 30日的下一天的三个数字 1992 7 1Sa
#include
int main()
{
int year,month,day;
scanf("%d %d %d",&year,&month,&day);
int dayofmonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};
if((year %4 == 0 && year %100 !=0) || year %400 == 0) //闰年
{
dayofmonth[1]++; //闰年2月29天
}
if(day == dayofmonth[month-1] && month != 12) //当月的最后一天且不是当年的最后一天
{
month = month+1;
day = 1;
}
else if(month == 12 && day ==31) //当年的最后一天.
{
year = year+1;
month =1;
day =1;
}
else //不是当月的最后一天.
{
day = day+1;
}
printf("%d %d %d",year,month,day);
return 0;
}