用C程序编写一个程序,打印空心星号正方形

用C程序打印数字左倒置直角三角形

用C程序编写一个程序,打印空心星号正方形

image-20250718103138914在 C 语言学习过程中,for 循环条件判断的结合应用非常重要。今天通过一个打印空心矩形的例子,帮助大家理解嵌套循环if语句的组合技巧。


🎯 程序目标

用 C 语言在控制台打印一个5行5列空心矩形

*****
*   *
*   *
*   *
*****

📄 完整C语言代码

#include <stdio.h>

int main() {
    int row, column;
    int row_length = 5;          // 行数
    int column_length = 5;       // 列数

    for (row = 1; row <= row_length; row++) {        // 外层循环控制行
        for (column = 1; column <= column_length; column++) {   // 内层循环控制列
            
            if(row == 1 || row == row_length) {      // 如果是第一行或最后一行
                printf("*");
            } else if(column == 1 || column == column_length) {  // 如果是每行的第一列或最后一列
                printf("*");
            } else {                                 // 其余情况输出空格
                printf(" ");
            }

        }
        printf("\n");   // 每行结束换行
    }

    return 0;
}

image-20250718145640432📊 程序运行结果

程序执行后,控制台输出:

*****
*   *
*   *
*   *
*****

image-20250718145650819📚 代码逻辑详解

  • 外层循环:控制矩形的行,从 15
  • 内层循环:控制每一行内的列,从 15
  • 条件判断
    • 如果是第一行最后一行:整行都是 *
    • 如果是每行的第一列或最后一列:打印 *
    • 其他位置则打印空格,构成空心效果。
  • 每完成一行打印,输出一个换行符。

⏳ 时间复杂度分析

  • 外层循环:执行 row_length 次。
  • 每次外层循环,内层循环执行 column_length 次。
  • 每次内层循环执行一次条件判断 + 打印操作

因此,总的基本操作次数为:
row_length×column_length=5×5=25 row\_length \times column\_length = 5 \times 5 = 25 row_length×column_length=5×5=25

  • 时间复杂度

O(row_length×column_length)=O(n2) O(row\_length \times column\_length) = O(n^2) O(row_length×column_length)=O(n2)

若行列相同(n 行 n 列),简化为:
O(n2) O(n^2) O(n2)


💾 空间复杂度分析

  • 程序仅使用了简单变量:
    • rowcolumnrow_lengthcolumn_length
  • 没有使用数组或其他数据结构存储。
  • 空间复杂度

O(1) O(1) O(1)


📌 总结表

项目内容
输出效果5行5列空心矩形
时间复杂度O(n²)
空间复杂度O(1)
技术要点嵌套循环 + 条件判断
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值