C语言代码:将2020年1月1日至12月31日转换为年、月、日、星期
#include <stdio.h>
struct Date { int year; int month; int day; char weekday[10]; };
int main() { struct Date dates[12] = { {2020, 1, 1, 'Wednesday'}, {2020, 1, 2, 'Thursday'}, {2020, 1, 3, 'Friday'}, {2020, 1, 4, 'Saturday'}, {2020, 1, 5, 'Sunday'}, {2020, 1, 6, 'Monday'}, {2020, 1, 7, 'Tuesday'}, {2020, 1, 8, 'Wednesday'}, {2020, 1, 9, 'Thursday'}, {2020, 1, 10, 'Friday'}, {2020, 1, 11, 'Saturday'}, {2020, 1, 12, 'Sunday'} };
int count;
printf('请输入一个1~366之间的值:');
scanf('%d', &count);
if (count < 1 || count > 366) {
printf('输入值无效!\n');
return 0;
}
int year = dates[0].year;
int month = dates[0].month;
int day = dates[0].day;
char weekday[10];
int i;
for (i = 0; i < count - 1; i++) {
day++;
if (day > 31) {
day = 1;
month++;
}
if (month > 12) {
month = 1;
year++;
}
}
struct Date date = {year, month, day, weekday};
switch (count % 7) {
case 1:
strcpy(date.weekday, 'Wednesday');
break;
case 2:
strcpy(date.weekday, 'Thursday');
break;
case 3:
strcpy(date.weekday, 'Friday');
break;
case 4:
strcpy(date.weekday, 'Saturday');
break;
case 5:
strcpy(date.weekday, 'Sunday');
break;
case 6:
strcpy(date.weekday, 'Monday');
break;
case 0:
strcpy(date.weekday, 'Tuesday');
break;
}
printf('%d年%d月%d日-%s\n', date.year, date.month, date.day, date.weekday);
return 0;
}
原文地址: https://www.cveoy.top/t/topic/pbH2 著作权归作者所有。请勿转载和采集!