C语言循环打印空心正方形代码实现

#include <stdio.h>

int main()
{
    int w, i, j;
    
    printf("输入正方形边长\n");
    scanf_s("%d", &w);
    
    if (w <= 0)
    {
        printf("正方形边长要大于0\n");
        return 0;
    }
    
    // 外层循环控制行数
    for (i = 0; i < w; i++)
    {
        // 内层循环控制列数
        for (j = 0; j < w; j++)
        {
            // 判断是否为边界位置,如果是则打印 "* ",否则打印空格
			//i等于0 表示第一行  i == w - 1 表示最后一行
			//j == 0 表示第一行  j == w - 1表示最后一列
            if (i == 0 || i == w - 1 || j == 0 || j == w - 1)
                printf("* ");
            else
                printf("  ");
        }
        printf("\n");
    }
    
    return 0;
}

该程序实现了一个循环打印空心正方形的功能。用户输入正方形的边长,然后程序使用嵌套循环逐行逐列打印正方形的图案。

注释已经对代码进行了详细解释,包括输入边长、边长验证、外层循环控制行、内层循环控制列、判断边界位置并打印相应的字符。
在边界位置,打印 "*",其他位置打印空格。

这样,当程序运行时,将根据输入的边长打印出相应的空心正方形图案。

posted @ 2023-06-09 21:13  跟Tom学编程-一对一  阅读(249)  评论(0编辑  收藏  举报