直角三角形每行星號遞增;等腰三角形每行星號為奇數 (1,3,5...),前面需填充空格使其居中。
#include <stdio.h>
int main() {
int rows;
printf("請輸入行數: ");
scanf("%d", &rows);
for (int i = 1; i <= rows; i++) {
// 打印前導空格:rows - i 個
for (int s = 1; s <= rows - i; s++) {
printf(" ");
}
// 打印星號:2*i - 1 個
for (int j = 1; j <= 2 * i - 1; j++) {
printf("*");
}
printf("\n");
}
return 0;
}
*
***
*****
*******
*********
for (int i = rows; i >= 1; i--) {
for (int s = 1; s <= rows - i; s++) printf(" ");
for (int j = 1; j <= 2 * i - 1; j++) printf("*");
printf("\n");
}
百度經驗 C語言打印等腰三角形圖文詳解。