问题:

从键盘输入一个数,表示正方形的边的*个数,从而打印出空心正方形。

思路:

  1. 一般这种图形题都是观察出来的。
  2. 发现第一行和最后一行,都是全打印*
  3. 其余行则是第一个和最后一个打印*,其余位置为空格。
  4. 此外正方形可看成二维的,外循环for代表行,内循环代表列。
  5. 在外循环中,分两种情况,一种是当行为第一个或者最后一个时,该行全打印*;当行不属于两者时,第一个和最后一个打印* ,其余打印空格。
  6. 由于计算机打印到屏幕,有格式问题,所以观察每次打印时,行和列的关系即可。

代码如下:

#include <stdio.h>
int main()
{int n;scanf("%d",&n);int i,k,t;for(i=0;i<n;i++)//表示行 {if(i==0||i==n-1)//第一行和最后一行时情况 {for(k=0;k<n;k++)//对列的情况进行打印 {printf("* ");}printf("\n");}else            //其他行时情况 {for(t=0;t<n;t++)//对列的情况进行打印 {if(t>0 && t<n-1)//当该列大于第一个位置小于最后一个位置时,打印空格 printf("  ");  //观察空心正方形发现,打印*时后面有一个空格,随后第二个则是打印两个空格。 elseprintf("* ");   //当在第一个位置和最后一个位置时,打印* }printf("\n");}}return 0;
}

66-C语言-打印空心正方形相关推荐

  1. 【C语言练习——打印空心正方形及其变形】

    活动地址:毕业季·进击的技术er 夏日炎炎,热浪中我们迎来毕业季,这是告别,也是迈向新起点的开始.这是一个毕业的月份,每年看到很多毕业生都离校上班,在校生准备考试和暑假实习,都非常感慨,不管怎样,作为 ...

  2. 程序题——打印空心正方形

    请以尽量高效的方法用"*"打印出一个空心正方形,num为边长 #include <stdio.h>int main() {int x,y,num;printf(&quo ...

  3. 用c语言打印空心菱形

    项目场景: 今天被学长问倒了,如何打印一个空心菱形,是用指针?还是循环嵌套? 问题描述 问题很简单就是打印一个空心菱形,话不多说直接看代码. 解决方案: #include<stdio.h> ...

  4. c语言打印空心矩形图案的程序,C语言空心菱形 *号打印图形

    //1.空心菱形 运行结果: 代码实现: int line = 0, m = 0; printf("请输入行数:\n"); scanf("%d", &l ...

  5. c语言打印空心数字图形,(完整word版)C语言编写打印实心和空心菱形【源码】

    <(完整word版)C语言编写打印实心和空心菱形[源码]>由会员分享,可在线阅读,更多相关<(完整word版)C语言编写打印实心和空心菱形[源码](13页珍藏版)>请在人人文库 ...

  6. c语言打印空心矩形图案的程序,C语言之输出空心棱形图案

    #include #include void main() { int n,j,i; /*i为行数,j为每行中的项数*/ printf("输入图案上三角的高度n:"); scanf ...

  7. python打印空心正方形

    第一种方法:单for循环 #定义正方形边长 rows = 5 #for循环打印 for x in range(rows):#if判断,筛选第一行与最后一行if x == 0 or x == rows- ...

  8. python打印数字正方形_python打印空心正方形-女性时尚流行美容健康娱乐mv-ida网...

    女性时尚流行美容健康娱乐mv-ida网 mvida时尚娱乐网 首页 美容 护肤 化妆技巧 发型 服饰 健康 情感 美体 美食 娱乐 明星八卦 首页  > 高级搜索 python 实现全排列的 打 ...

  9. c语言打印空心等腰梯形乐学,C语言做激光发射

    /*C语言做激光发射器游戏,按上下左右箭头键移动 发射器,按空格键发射激光,按Esc键结束游戏*/ #include #include #include void main() { int i,j;/ ...

最新文章

  1. Linux系统管理必备知识之利用ssh传输文件
  2. 我的puppet web 管理,彻底告别终端模式
  3. VC访问数据库学习总结
  4. 【转】排除被冲销的物料凭证
  5. 深度学习和目标检测系列教程 9-300:TorchVision和Albumentation性能对比,如何使用Albumentation对图片数据做数据增强
  6. LLS战队高级软件工程第九次作业敏捷冲刺七
  7. oh,我的老伙计,你看看这近五十个dapr视频
  8. leetcode279. 完全平方数(动态规划)
  9. Java基础学习总结(46)——JAVA注解快速入门
  10. 问题 K: n个数的最大值和最小值
  11. 三星 SGH-G810 多普达 P800 多普达 Touch Diamond(S900) 多普达 P860 多普达 Touch(T3238) 对比...
  12. 见证云原生创变 2019云原生技术实践峰会落幕
  13. 统计学基础知识梳理(一)
  14. C#播放视频时与暴风影音冲突的问题
  15. 五金行业智慧采购解决方案:应用集中采购协同管理系统激活企业数字化采购价值
  16. 英语语法新思维初级分享
  17. 有线异步通信原理_通信考试专业到底应该怎么选择。
  18. 曾用心并深度参与的一款游戏今天发布了关服通知,回顾一下我最初的工作日报
  19. MATLAB图像的频域低通滤波(灰度图像滤波+彩色图像滤波)
  20. 【Android】JNI调用(完整版)

热门文章

  1. 图像的膨胀与腐蚀--确认这个大牛的才是正确的
  2. java 根据日期计算当前周一和周日,及根据秒数计算天小时分钟秒数等相关日期
  3. 网络测试技术——802.1X_MD5认证(上篇)
  4. powderdesigner的简单用法
  5. 【整理】3dsMax中J是什么命令?
  6. C++ 格式化地输出乘法口诀表,要求每列左对齐
  7. 什么样的代码称得上是好代码?
  8. SQL 中 条件放在on与where的区别
  9. 隐藏账户的排除、D盾的使用
  10. 清洗完相机拍照测试年龄的软件,算年龄的照相软件 那个拍照测年龄的软件叫什么...