c语言打印星号三角形
时间: 2024-09-24 07:30:53 浏览: 63
在 C 语言中,打印星号三角形通常通过循环结构来实现,主要有两种常见的方法:第一种是使用嵌套循环来控制星号的位置,第二种是使用数组或字符串动态创建。
1. **方法一:嵌套循环打印**
```c
#include <stdio.h>
int main() {
int rows;
printf("请输入行数:");
scanf("%d", &rows);
for (int i = 1; i <= rows; i++) {
// 打印空格
for (int j = rows - i; j > 0; j--) {
printf(" ");
}
// 打印星号
for (int k = 0; k < i * 2 - 1; k++) {
printf("*");
}
printf("\n"); // 换行
}
return 0;
}
```
在这个例子中,外层循环控制行数,内层循环分别负责打印空格和星号。
2. **方法二:字符数组动态创建**
```c
#include <stdio.h>
#define MAX_SIZE 50
void print_triangle(int rows) {
char triangle[MAX_SIZE] = {0};
for (int i = 1; i <= rows; i++) {
for (int j = 0; j < rows - i; j++) {
triangle[j] = ' ';
}
triangle[rows - i] = '*';
for (int k = 0; k < i * 2; k++) {
printf("%c", triangle[k]);
}
printf("\n");
}
}
int main() {
int rows;
printf("请输入行数:");
scanf("%d", &rows);
print_triangle(rows);
return 0;
}
```
这个版本将每个三角形一行存储在一个字符数组里,然后逐行打印。
阅读全文