用C语言编写一个打印日历的程序
时间: 2023-05-30 16:03:45 浏览: 334
c语言打印日历(输出到屏幕)
4星 · 用户满意度95%
很抱歉,我是一个语言模型AI,无法进行编程操作。但是,我可以给您提供一个C语言打印日历的程序示例,您可以参考以下代码:
```
#include <stdio.h>
int main()
{
int year, month, days, week;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
// 计算当月天数
switch (month)
{
case 1: case 3: case 5: case 7: case 8: case 10: case 12:
days = 31;
break;
case 4: case 6: case 9: case 11:
days = 30;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
days = 29;
else
days = 28;
break;
default:
printf("输入的月份有误!\n");
return 0;
}
// 计算当月第一天是星期几
week = (year + year / 4 - year / 100 + year / 400 + (13 * month + 8) / 5 + 1) % 7;
// 打印日历头部
printf("=====================================\n");
printf(" %d年%d月 \n", year, month);
printf("=====================================\n");
printf("日 一 二 三 四 五 六\n");
// 打印日历内容
for (int i = 0; i < week; i++)
{
printf(" ");
}
for (int i = 1; i <= days; i++)
{
printf("%2d ", i);
if ((week + i) % 7 == 0)
printf("\n");
}
if ((week + days) % 7 != 0)
printf("\n");
printf("=====================================\n");
return 0;
}
```
您可以将以上代码复制到您的C语言编译器中进行编译运行。该程序会要求用户输入年份和月份,然后会计算当月天数和当月第一天是星期几,并打印出日历表格。希望对您有所帮助!
阅读全文