void work(int nWor)
{
int xMax = nWor;
for (int i = 0;i
int lrwx = ((nWor-1)/2 * 2) + 1; //输出一行中 * 最大数
int drwx = (i<= (lrwx/2)) ? (i*2 + 1) : (-(i-lrwx/2 - (nWor%2 == 0))*2 + lrwx); //输出当行中 * 的个数
for (int j = 0;j< lrwx; j ++)
{
if (j < (lrwx - drwx)/2 || j >= (lrwx - drwx)/2 + drwx)
printf(" ");
else
printf("*");
}
printf("\n");
}
}
参数nWor 为 输出的行数.
绝对好使.希望对你有帮助.