用c语言帮我写一个打印万年历的程序,月份打印用函数实现
时间: 2023-11-27 14:03:45 浏览: 135
体育课评分系统 微信小程序+SSM毕业设计 源码+数据库+论文+启动教程.zip
好的,下面是一个简单的打印万年历的 C 语言程序,其中月份的打印使用了函数实现:
```
#include <stdio.h>
// 计算某一年某一月的天数
int get_days(int year, int month)
{
int days;
if (month == 2) {
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) {
days = 29;
} else {
days = 28;
}
} else if (month == 4 || month == 6 || month == 9 || month == 11) {
days = 30;
} else {
days = 31;
}
return days;
}
// 打印某一年某一月的日历
void print_calendar(int year, int month)
{
int days, i, j, k;
days = get_days(year, month);
printf(" Sun Mon Tue Wed Thu Fri Sat\n");
k = 1;
for (i = 1; i <= 6; i++) {
for (j = 1; j <= 7; j++) {
if (i == 1 && j < k) {
printf(" ");
} else if (k <= days) {
printf("%4d", k);
k++;
}
}
printf("\n");
if (k > days) {
break;
}
}
}
int main()
{
int year, month;
printf("请输入年份:");
scanf("%d", &year);
printf("请输入月份:");
scanf("%d", &month);
printf("%d年%d月的日历如下:\n", year, month);
print_calendar(year, month);
return 0;
}
```
该程序会先通过 `get_days` 函数计算出某一年某一月的天数,然后通过 `print_calendar` 函数打印该月的日历。在 `main` 函数中,我们先让用户输入年份和月份,然后调用 `print_calendar` 函数打印该月的日历。
阅读全文