用C程序编写一个程序,用星号拼出数字4的图形

用C程序编写一个程序,用星号拼出数字4的图形

image-20250718113542647利用C语言中的嵌套循环和条件判断,我们可以绘制各种数字的图案。本文介绍如何用简单的代码输出一个数字“4”的图形。


📄 完整代码

#include <stdio.h>

int main() {
    int row, column;
    int row_length = 11;      // 总行数
    int column_length = 10;   // 总列数
    int row_middle = 6;       // 数字“4”的中间横线所在行

    for (row = 1; row <= row_length; row++) {
        for (column = 1; column <= column_length; column++) {
            if (column == 1 && row < row_middle) {
                // 左上部分竖线(列1,行小于中间行)
                printf("*");
            } else if (row == row_middle) {
                // 中间横线(第6行)
                printf("*");
            } else if (column == column_length) {
                // 右侧竖线(最后一列)
                printf("*");
            } else {
                // 其他位置打印空格
                printf(" ");
            }
        }
        printf("\n");
    }

    return 0;
}

image-20250718152026311📊 运行结果

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

image-20250718152035994📚 代码逻辑解析

  • 左侧竖线:当列为1且行号小于中间行时,打印*,形成数字“4”的左上部分竖线。
  • 中间横线:第6行打印整行的*,形成数字“4”的中间横线。
  • 右侧竖线:所有行最后一列打印*,形成数字“4”的右侧竖线。
  • 其他区域打印空格保持图形整洁。

⏳ 时间复杂度

  • 外层循环遍历行数:O(row_length)
  • 内层循环遍历列数:O(column_length)

总体时间复杂度为:
O(row_length×column_length)=O(n×m) O(\text{row\_length} \times \text{column\_length}) = O(n \times m) O(row_length×column_length)=O(n×m)


💾 空间复杂度

仅使用了常量级别的整型变量,空间复杂度为:
O(1) O(1) O(1)


总结

项目内容
图案类型数字“4”
关键点条件控制坐标输出
时间复杂度O(n × m)
空间复杂度O(1)
输出大小11行 × 10列
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值