在C语言中,输出由星号组成的三角形可以通过嵌套循环来实现。下面是一个简单的示例代码,用于打印一个由星号组成的等腰三角形:
```c
include
int main() {
int rows, i, j, space;
printf("请输入行数: ");
scanf("%d", &rows);
space = rows - 1;
for (i = 1; i <= rows; i++) {
// 打印每一行前面的空格
for (j = 1; j <= space; j++) {
printf(" ");
}
space--;
// 打印每一行的星号
for (j = 1; j <= 2 * i - 1; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
这段代码首先提示用户输入要打印的行数,然后使用两个嵌套的for循环来打印出等腰三角形。外层循环控制行数,内层循环分别负责打印每一行的空格和星号。运行程序后,输入所需的行数,即可打印出相应的星号三角形。
如果你想要打印一个直角三角形,可以使用类似的逻辑,但是内层循环的条件会有所不同。下面是一个打印直角三角形的示例代码:
```c
include
int main() {
int n;
printf("请输入行数: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
// 打印每一行前面的空格
for (int j = 1; j <= n - i; j++) {
printf(" ");
}
// 打印每一行的星号
for (int j = 1; j <= 2 * i - 1; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
在这个示例中,每个星号的数量等于它的行号,因此第一行有一个星号,第二行有两个星号,依此类推。内层循环的条件是`j <= 2 * i - 1`,这样可以确保每一行的星号数量正确。