题解(两个for循环)
2026-01-22 19:38:12
发布于:江苏
14阅读
0回复
0点赞
思路:输入处理:读取整数 n,代表图案的大小
双重循环:
外层循环控制行数(i 从 0 到 n-1)
内层循环控制列数(j 从 0 到 n-1)
字符判断优先级:
首先判断是否在主对角线(i == j)
或副对角线(i + j == n - 1),如果是则输出 '*'
否则判断是否在边框,如果是则输出 '#'
最后,其余位置输出 '.'
#include <iostream>
using namespace std;
int main() {
int n;
cin >> n;
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
if (i == j || i + j == n - 1) {
cout << "*";
}
else if (i == 0 || i == n - 1 || j == 0 || j == n - 1) {
cout << "#";
}
else {
cout << ".";
}
}
cout << endl;
}
return 0;
}
这里空空如也







有帮助,赞一个