采用双重循环的函数实现如下的三角形星号图,程序可以改变行数、星号并统计字符数。 正立三角形 * *** ***** ******* *********
时间: 2024-06-15 21:06:45 浏览: 66
要实现正立三角形星号图,可以使用双重循环来控制行数和每行的星号数量。以下是一个示例代码:
```c
#include <stdio.h>
void printTriangle(int rows, char symbol) {
int i, j;
int count = 0; // 统计字符数
for (i = 1; i <= rows; i++) {
// 打印空格
for (j = 1; j <= rows - i; j++) {
printf(" ");
count += 2; // 每个空格占两个字符
}
// 打印星号
for (j = 1; j <= 2 * i - 1; j++) {
printf("%c ", symbol);
count += 2; // 每个星号占两个字符
}
printf("\n");
}
printf("总字符数:%d\n", count);
}
int main() {
int rows;
char symbol;
printf("请输入行数:");
scanf("%d", &rows);
printf("请输入星号字符:");
scanf(" %c", &symbol);
printTriangle(rows, symbol);
return 0;
}
```
运行程序后,输入行数和星号字符,即可打印出相应的正立三角形星号图,并统计字符数。
解释:
- 外层循环控制行数,内层循环分别打印空格和星号。
- 空格的数量为行数减去当前行数,每个空格占两个字符。
- 星号的数量为2 * 当前行数 - 1,每个星号占两个字符。
- 统计字符数时,每个空格和星号都占两个字符。
阅读全文