用C语言打印一个空心三角形
时间: 2024-09-15 15:08:23 浏览: 18
在C语言中,我们可以使用循环结构来打印空心三角形。这里给出一个简单的例子,如何打印一个5行的空心三角形:
```c
#include <stdio.h>
void print_hollow_triangle(int n) {
for (int i = 0; i < n; i++) { // 首先外层循环控制行数
// 打印空格
for (int j = n - i - 1; j > 0; j--) {
printf(" ");
}
// 打印星号(*)
for (int k = 0; k <= 2 * i; k++) {
printf("*");
}
// 每行结束换行
printf("\n");
}
// 再次打印一行星号作为底部装饰
for (int m = 0; m < n; m++) {
printf("*\n");
}
}
int main() {
int rows = 5;
print_hollow_triangle(rows);
return 0;
}
```
当你运行这个程序,它会打印出一个5行的空心三角形,其中内部是实心星号,外部是空格。
相关问题
用C语言编程输出一个空心三角形
以下是用C语言编程输出一个空心三角形的代码:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入要输出的空心三角形的行数:");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
// 输出空格
for (int j = 1; j <= n - i; j++) {
printf(" ");
}
// 输出星号
if (i == 1 || i == n) {
for (int j = 1; j <= i * 2 - 1; j++) {
printf("*");
}
} else {
printf("*");
for (int j = 1; j <= i * 2 - 3; j++) {
printf(" ");
}
printf("*");
}
printf("\n");
}
return 0;
}
```
运行程序后,会要求用户输入要输出的空心三角形的行数,然后程序会输出对应行数的空心三角形。例如,如果用户输入3,程序会输出如下的空心三角形:
```
*
* *
*****
```
值得注意的是,上面的代码中,我们使用了两个嵌套的for循环来控制空格和星号的输出,并且在输出星号时分别考虑了第一行、最后一行和中间行的情况。在输出中间行时,我们先输出一个星号,然后输出i*2-3个空格,最后再输出一个星号。这样可以保证空心部分的宽度恰好为i*2-3。
使用c语言*打印空心等边三角形
在 C 语言中,打印空心等边三角形可以通过循环结构来实现,通常使用嵌套的 for 循环。这里是一个简单的示例,它会打印一个给定行数(n)的空心等边三角形:
```c
#include <stdio.h>
void print_hollow_triangle(int n) {
int space = n - 2; // 空格的数量
for (int i = 0; i < n; ++i) {
// 打印前半部分的星号(空心)
for (int j = 0; j < space; ++j)
printf(" ");
for (int j = 0; j <= i; ++j)
printf("*");
// 每行结束换行
printf("\n");
// 如果不是最上面一行,减少空格数量并继续下一行
if (i != n - 1) {
space -= 2;
}
}
}
int main() {
int rows;
printf("请输入空心三角形的行数: ");
scanf("%d", &rows);
print_hollow_triangle(rows);
return 0;
}
```