用c++编写一个万年历
时间: 2023-06-05 22:05:30 浏览: 62
好的,以下是使用 C 语言编写的一个简单的万年历程序:
```
#include <stdio.h>
int main(void)
{
int year, month, day;
int daysPerMonth[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31};
char* weekDay[] = {"Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"};
printf("Please enter the year (1900~2100): ");
scanf("%d", &year);
printf("Please enter the month (1~12): ");
scanf("%d", &month);
printf("\n %d/%02d\n", year, month);
printf(" Su Mo Tu We Th Fr Sa\n");
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
daysPerMonth[1] = 29;
day = 1;
int weekDayNum = 0;
int i;
for (i = 0; i < 6; i++) {
int j;
for (j = 0; j < 7; j++) {
if (i == 0 && j < weekDayNum)
printf(" ");
else if (day <= daysPerMonth[month-1])
printf("%3d", day++);
else
printf(" ");
if (j == 6)
printf("\n");
}
}
return 0;
}
```
这个程序的功能是让用户输入一个年份和一个月份,然后输出该月份的日历。程序中使用了一个数组来存储每个月的天数,以及一个字符串数组来存储每个星期的名称(星期日~星期六)。程序会根据输入的年份判断该年是否是闰年,然后根据输入的月份输出该月的日历。