1. 程式人生 > >C語言中列印圖形問題

C語言中列印圖形問題

C語言中列印圖形問題

上半部分規律:星號數目是行數的二倍減一,空格數是上半部分總行數減去它所在的行號;

下半部分規律:從下半部分開始算起,每行星號數是2line-2n-1,空格數目為它所在的行號

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
 
int main()
{
	int line = 0;
	int n = 0;
	int i = 0;
	int j = 0;
	printf("請輸入要列印的菱形上半部分的行數:");
	scanf("%d",&line);
	//列印上半部分
	for (n=1; n<=line; n++)//控制行數
	{
		for (i=0; i<line-n; i++)//控制空格數量
		{
			printf(" ");
		}
		for (j=0; j<2*n-1; j++)//控制星號數量
		{
			printf("*");
		}
		printf("\n");
	}
	//列印下半部分
	for (n=1; n<line; n++)//控制行數
	{
		for (i=0; i<n; i++)//控制空格數量
		{
			printf(" ");
		}
		for (j=0; j<2*line-2*n-1; j++)//控制星號數量
		{
			printf("*");
		}
		printf("\n");
	}
	return 0;
}