用C程序编写一个程序,用星号拼出C的图形
字母“C”形状类似一个半开口的弧线,上下有横线,左边有竖线,而右边是开口。用字符打印“C”可以通过条件判断在指定行列打印星号实现。本文用简单的双层循环和条件语句演示如何绘制“C”。
📄 详细代码
#include <stdio.h>
int main() {
int row, column;
int row_length = 10; // 总行数
int column_length = 10; // 总列数
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) {
// 第一列打印竖线
printf("*");
} else {
// 其他位置打印空格
printf(" ");
}
}
printf("\n");
}
return 0;
}
📊 运行结果
**********
*
*
*
*
*
*
*
*
**********
📚 代码逻辑解析
- 横线:
- 第1行和第10行打印满行星号,形成字母“C”的上下边界。
- 竖线:
- 每行的第1列打印星号,形成字母“C”的左边竖线。
- 空格:
- 其余位置打印空格,保持图案空心,呈现出“C”字形状。
⏳ 时间复杂度
- 外层循环执行
row_length次。 - 内层循环执行
column_length次。
整体时间复杂度为:
O(n×m)
O(n \times m)
O(n×m)
其中 n=n =n= 行数,m=m =m= 列数。
💾 空间复杂度
仅使用了若干整型变量,空间复杂度为:
O(1)
O(1)
O(1)
📌 总结
| 项目 | 说明 |
|---|---|
| 图案类型 | 字母“C” |
| 关键设计 | 上下横线 + 左边竖线 |
| 时间复杂度 | O(n × m) |
| 空间复杂度 | O(1) |
| 输出尺寸 | 10行 × 10列 |

被折叠的 条评论
为什么被折叠?



