思路分析:题目已经明确透露了这道题的解法:就是画框。当 输入的边长  的话,就表示可以在内层继续嵌套一个方框。废话就不多说了,直接上代码吧!


代码如下:

#include <iostream>
#include <algorithm>
using namespace std; int n;
char ch[105][105]; int main() {
while (cin >> n) {
// 初始化 (切记 ,必须要初始化!!!)
for (int i = 0; i < n; i++)
for (int j = 0; j < n; j++)
ch[i][j] = ' '; int a = 0;
int b = n;
// 画框
do {
for (int i = a; i < n - a; i++) { // 画 上下 两条边
ch[a][i] = '*';
ch[n - a - 1][i] = '*';
}
for (int i = a + 1; i < n - a - 1; i++) { // 画 左右 两条边
ch[i][a] = '*';
ch[i][n - a - 1] = '*';
}
a += 2;
b = b - 4;
} while (b > 0); // 判断是否继续画框的条件
// 输出
for (int i = 0; i < n; i++) {
for (int j = 0; j < n; j++) {
cout << ch[i][j];
}
cout << endl;
}
}
return 0;
}

最新文章

  1. asp.net core 实战之 redis 负载均衡和&quot;高可用&quot;实现
  2. 2.Powershell Console
  3. 五步教你实现使用Nginx+uWSGI+Django方法部署Django程序
  4. nginx 目录文件列表功能配置
  5. Android res/raw vs assets
  6. Android 开发 之 Fragment 详解
  7. C++多态性与C#的比较
  8. [转] Form表单中method=&quot;post/get&#39;的区别
  9. popup
  10. HTML通过事件传递参数到js 二 event
  11. Android学习笔记之Broadcast Receiver
  12. 了解Java基础原理
  13. HDU 6149 Valley Numer II 状压DP
  14. [ACdream]瑶瑶带你玩激光坦克
  15. 引入UEditor后其他列表项不显示
  16. servlet概述(作业11)
  17. 企业级代码托管Gitlab
  18. Codeforces.1028F.Make Symmetrical(结论 暴力)
  19. java/javac命令行如何同时引用多个包;错误 TypeError: &#39;JavaPackage&#39; object is not callable 的含义
  20. 电影《Green book》观后感_已补全:携带着种族歧视的“光环”,艰难地获得朋友的相互依赖,依然得享受生活的酸甜苦咸。

热门文章

  1. Nginx状态码和日志
  2. 【Azure Redis 缓存】Azure Cache for Redis 中如何快速查看慢指令情况(Slowlogs)
  3. Arcpy按属性(字段值)不同将shp分割为多个独立shp_适用点线面矢量
  4. CF424A Squats 题解
  5. 初识requests
  6. 磁盘分区级文件系统丢失找回 testdisk
  7. springboot目录结构、重要配置文件、重要注解的详解
  8. 【LeetCode】1470. 重新排列数组 Shuffle the Array (Python)
  9. 写在LeetCode刷题600题
  10. 【剑指Offer】10- I. 斐波那契数列 解题报告(Python & C++)