在C语言中,有多种方法可以用来编程打印星星图案。以下是几种常见的方法:
方法一:使用嵌套循环
```c
include
int main() {
int rows = 5; // 设置星星行数
for (int i = 1; i <= rows; i++) {
// 打印空格
for (int j = 1; j <= rows - i; j++) {
printf(" ");
}
// 打印星星
for (int k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
// 换行
printf("\n");
}
return 0;
}
```
方法二:使用用户输入
```c
include
int main() {
int n;
printf("请输入图案的行数: ");
scanf("%d", &n);
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
printf(" ");
}
for (int k = 1; k <= 2 * i - 1; k++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
方法三:数学规律编程
```c
include
void main() {
int num, i, j;
printf("请输入一个数字: ");
scanf("%d", &num);
for (i = 1; i <= num; i++) {
for (j = 1; j <= (num - i); j++) {
printf(" "); // 打印空格
}
for (j = 1; j <= 2 * i - 1; j++) {
printf("*"); // 打印星星
}
for (j = 1; j <= (num - 1); j++) {
printf(" "); // 打印空格
}
printf("\n");
}
scanf("%d", &num);
}
```
方法四:对称图案
```c
include
int main() {
int i = 0, j = 0, k = 0;
for (i = 0; i <= 2; i++) {
for (j = 0; j <= 2 - i; j++) {
printf(" ");
}
for (k = 0; k <= 2 * i; k++) {
printf("*");
}
printf("\n");
}
for (i = 0; i <= 1; i++) {
for (j = 0; j <= i + 1; j++) {
printf(" ");
}
for (k = 0; k <= 2 - 2 * i; k++) {
printf("*");
}
printf("\n");
}
return 0;
}
```
方法五:用户输入行数,奇偶行不同
```c
include
int main() {
int index, up, lines;
printf("请输入将要显示的行数:\n");
while (scanf("%d", &up) == 1) {
if (up % 2 == 0) {
for (lines = 1; lines <= up; lines--) {
for (index = lines; index > 0; index--) printf("*");
for (index = 0; index < lines; index++) printf("*");
printf("\n");
}
} else {
for (lines = 0; lines <= up / 2; lines++) {
for (index = 0; index <= 2 * lines; index++) printf("*");
for (index = 0; index < 2 * lines; index++) printf("*");
printf("\n");
}
}
}
return 0;
}
```
这些方法都可以用来在C语言中打印星星图案,你可以根据自己的需求和喜好选择合适的方法。