c++根据输入年月日输出该天为星期几
时间: 2024-10-11 19:06:26 浏览: 60
在C++中,你可以使用`<ctime>`库来计算给定日期对应的星期几。以下是一个简单的示例程序,它会根据用户输入的年、月、日,输出相应的星期:
```cpp
#include <iostream>
#include <ctime>
int main() {
int year, month, day;
std::cout << "请输入年份: ";
std::cin >> year;
std::cout << "请输入月份(1-12): ";
std::cin >> month;
std::cout << "请输入日期(1-31): ";
std::cin >> day;
// 检查输入是否有效,这里简单处理了1-31范围内的日期
if (month > 0 && month <= 12 && day >= 1 && day <= 31) {
struct tm time_info = {0};
time_info.tm_year = year - 1900; // 使用基于1900年的时间戳
time_info.tm_mon = month - 1; // 月份从0开始计数
time_info.tm_mday = day;
time_info.tm_hour = 0; // 小时设置为0,忽略时区差异
time_info.tm_min = 0;
time_info.tm_sec = 0;
// 调用ctime函数获取星期信息,并转换为英文缩写
char weekday[10];
localtime_s(&time_info, &weekday); // 将时间转换为本地时间
std::cout << "这一天是: " << std::string(weekday) << std::endl;
} else {
std::cerr << "无效的日期输入!" << std::endl;
}
return 0;
}
```
阅读全文