#include<stdio.h>
int main()
{
int i=0,j=0;
int m;
scanf("%d",&m);
for(i=1; i<=m; i++) //控制行
{
for(j=i; j<=m; j++) //控制空格
printf(" ");
for(j=1; j<=2*i-1; j++) //控制*
printf("*");
printf("\n");
}
//————打印上半个△—————
for(i=1; i<m; i++)
{
for(j=1; j<=i+1; j++)
printf(" ");
for(j=1; j<=2*(m-i)-1; j++)//*的规律
printf("*");
printf("\n");
}
return 0;
}
下面是输入n行打印n行
#include <stdio.h>
int main()
{
int i, j, n;
scanf("%d", &n);
int k = (n + 1) / 2;
for (i = 1; i <= k; i++) {
for (j = 1; j <= n - 2 * i + 1; j++)
printf(" ");
for (j = 1; j <= 2 * i - 1; j++)
printf("*");
printf("\n");
}
for (i = n - k; i >= 1; i--) {
for (j = 1; j <= n - 2 * i + 1; j++)
printf(" ");
for (j = 1; j <= 2 * i - 1; j++)
printf("*");
printf("\n");
}
}