0

    c++输入某年某月某日,判断这一天是这一年的第几天 c++用

    9个月前 | admin | 50次围观

    ```#include int main() {int year, month, day;printf("请输入年月日,格式为YYYY-MM-DD:");scanf("%d-%d-%d", &year, &month, &day);int days[] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 }; // 存储每个月的天数int sum = 0;for (int i = 1; i < month; i++) {sum += days[i];}sum += day;if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {// 如果是闰年,并且输入的月份大于2月,要加上一个闰年的2月29日if (month > 2) {sum += 1;}}// 计算该日期是星期几,0表示星期日,1表示星期一,以此类推int weekday = (year - 1) % 7;for (int i = 1; i < year; i++) {if ((i % 4 == 0 && i % 100 != 0) || i % 400 == 0) {weekday += 2;} else {weekday += 1;}}weekday += sum - 1;printf("%d-%d-%d是星期%d\n", year, month, day, weekday % 7);return 0;}```该程序先让用户输入一个日期,然后计算该日期是一年中的第几天,再根据这个天数和该年的闰年情况计算出该日期是星期几。程序中使用了数组存储每个月的天数,使用了循环计算天数和星期几。

    发表评论