c++输入 从键盘按年、月、日顺序输入日期。(输入数据都在合法范围内)。输出 中、美、英式的日期写法。每个输出占一行
时间: 2024-09-28 16:17:49 浏览: 35
C++的输入和输出
5星 · 资源好评率100%
在C++中,为了从键盘获取用户输入的年、月、日,并根据不同格式输出日期,你可以使用`cin`来读取用户的输入,然后利用`stringstream`或者其他字符串处理函数来进行转换。以下是简单的示例代码:
```cpp
#include <iostream>
#include <sstream>
#include <iomanip>
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;
// 检查输入合法性
if (year < 0 || month < 1 || month > 12 || day < 1 || day > 31) {
std::cerr << "输入的日期无效!" << std::endl;
return 1;
}
// 中式日期 (年-月-日)
std::ostringstream oss1;
oss1 << std::setfill('0') << std::setw(4) << year << '-' << std::setw(2) << month << '-' << std::setw(2) << day;
std::string chinese_date = oss1.str();
std::cout << "中式日期: " << chinese_date << std::endl;
// 美式日期 (MM/DD/YYYY)
std::ostringstream oss2;
oss2 << std::setw(2) << month << '/' << std::setw(2) << day << '/' << std::setw(4) << year;
std::string us_date = oss2.str();
std::cout << "美式日期: " << us_date << std::endl;
// 英式日期 (DD/MM/YYYY)
std::ostringstream oss3;
oss3 << std::setw(2) << day << '/' << std::setw(2) << month << '/' << std::setw(4) << year;
std::string uk_date = oss3.str();
std::cout << "英式日期: " << uk_date << std::endl;
return 0;
}
```
阅读全文