C语言打印任意行数菱形(奇数)

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
	int nHigh = 0,nMid=0;
	printf("请输入要打印的菱形行数(奇数):");
	scanf_s("%d", &nHigh);
	nMid = nHigh / 2;
	for (int i=0;i<nHigh;i++)
	{
		if (i <= nMid)		//打印上半部分
		{
			for (int j = 0; j <= nHigh - 1 + i; j++)
			{
				if (j >= nMid - i && j <= nMid + i)
				{
					printf("*");
				}
				else printf(" ");

			}

			printf("\n");
		}
		else     //打印下半部分
		{
			for (int j = 0; j <= nHigh - 1 + i; j++)
			{
				if (j >= i-nMid && j <= (nHigh-1)-(i-nMid))
				{
					printf("*");
				}
				else printf(" ");

			}

			printf("\n");
		}
	}
	system("pause");
}

猜你喜欢

转载自blog.csdn.net/plokday/article/details/94650437