注册了域名 网站怎么做,万网域名注册信息查询,网站如何更新,wordpress腾讯云cdn// 输入某一年的第几天#xff0c;计算并输出它是这一年的第几月第几日。 /* 函数功能: 对给定的某一年的第几天#xff0c;计算它是这一年的第几月第几日。 函数入口参数: 整形变量year,存储年#xff1b; 整形变量yearDay,存储某一年的第几天计算并输出它是这一年的第几月第几日。 /* 函数功能: 对给定的某一年的第几天计算它是这一年的第几月第几日。 函数入口参数: 整形变量year,存储年 整形变量yearDay,存储某一年的第几天 函数出口参数: 整型指针pMonth指向存储这一年第几月的整形变量 整型指针pDay指向存储第几日的整形变量 函数返回值: 无 */ //int MonthDay(int year, int yearDay, int *pMonth, int *pDay)
#include stdio.h // 判断是否为闰年
int isLeapYear(int year) {return (year % 4 0 year % 100 ! 0) || (year % 400 0);
}// 计算并输出它是这一年的第几月第几日
int MonthDay(int year, int yearDay, int* pMonth, int* pDay) {int daysInMonth[] { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };int i 0;// 如果是闰年2月有29天 if (isLeapYear(year)) {daysInMonth[1] 29;}// 遍历月份直到找到对应的日期 while (yearDay daysInMonth[i]) {yearDay - daysInMonth[i];i;}// 返回月份和日期 *pMonth i 1; // 数组从0开始月份从1开始 *pDay yearDay;// 函数没有返回值返回类型为void也可以但这里为了与问题描述一致使用int return 0;
}int main() {int year, yearDay, month, day;printf(请输入年份: );scanf_s(%d, year);printf(请输入这一年的第几天: );scanf_s(%d, yearDay);MonthDay(year, yearDay, month, day);printf(%d年的第%d天是%d月的第%d天\n, year, yearDay, month, day);return 0;
}