```cpp #include <iostream> int main() { int n, m; std::cin >> n >> m; for (int i = 0; i < n; ++i) { // 输出每行的内容 for (int j = 0; j < n; ++j) { if ((i < m || i >= n - m) && j < m) { // 处理左右两边的竖边 std::cout << '+'; } else if (i >= n - m) { // 处理底边 std::cout << '+'; } else { std::cout <<' '; } } std::cout << '\n'; // 换行 } return 0; } ``` 注意逻辑点: 1. 注意处理边界条件,确保输出的准确性。 2. 对于循环的控制要准确,避免出现多输出或少输出的情况。 3. 检查输入数据的合法性,防止异常输入导致程序错误。 [2025-02-04 18:22:50 | AI写代码神器 | 240点数解答]