cin输出字符串,已知行宽,要求字符串居中输出
时间: 2024-10-03 18:01:30 浏览: 33
C++实现字符串删除字符后逆序输出
5星 · 资源好评率100%
在C++中,如果你想让输入的字符串按照给定的行宽度居中显示,并使用`cin`输出,你可以使用`setw`从`iomanip`库来控制输出字段的宽度,以及`left`和`right`标志来自调整对齐方式。下面是一个简单的示例:
```cpp
#include <iostream>
#include <string>
#include <iomanip>
void center_output(const std::string& str, int width) {
std::cout << std::left << std::setw(width) << std::setfill(' ') << str << std::endl;
}
int main() {
std::string input;
int line_width;
// 询问用户输入
std::cout << "请输入字符串:";
getline(std::cin, input);
std::cout << "请输入行宽:";
std::cin >> line_width;
// 居中输出
center_output(input, line_width);
return 0;
}
```
在这个例子中,`getline`用于获取用户输入的完整字符串,包括空格。然后,调用`center_output`函数将字符串居中输出到指定的行宽。注意,这里用空格填充不足的部分以达到居中效果。
阅读全文