c语言输入年月日查询星期几
时间: 2024-11-03 19:15:47 浏览: 10
在C语言中,要计算给定日期的星期几,你可以使用蔡勒公式(Zeller's congruence),这是一种古老的算法,用于根据日期推算星期几。以下是一个简单的函数示例,它接受年、月和日作为输入,返回对应的英文星期:
```c
#include <stdio.h>
#include <stdbool.h>
// 定义一个常量数组,表示一周中的7天
const char* days[] = {"Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"};
// 计算给定日期的星期
char getWeekday(int year, int month, int day) {
if (month < 3) {
month += 12;
year -= 1;
}
int century = year / 100;
int week_day = (day + ((13 * (month + 1)) / 5) + year + (year / 4) - (century / 4) + (5 * century)) % 7;
return days[week_day];
}
int main() {
int year, month, day;
printf("Enter a date (YYYY-MM-DD): ");
scanf("%d-%d-%d", &year, &month, &day);
printf("The day is %s.\n", getWeekday(year, month, day));
return 0;
}
```
当你运行这个程序并输入一个日期,例如2023-06-16,它会告诉你那天是星期几。
阅读全文