菜鸟笔记
提升您的技术认知

打印一个n行的菱形-ag真人游戏

开始编写程序前,我们需要先找到菱形的规律。
1.菱形的行数k为奇数,除中间一行外上下对称,我们可以将中间行归到上半部分,上半部分行数为k=k/2 1,下半部分为k=k/2。
2.菱形每一行的*数量递增或递减两个。
3.空格数每一行递减(递增)一个,到中间行为0,可知空格数为 k-( )当前行数
得出结论后即可开始编写代码
首先声明变量并让用户输入菱形的行数

int i,j,z,n,k;
printf("请输入菱形的行数:\n"); 
scanf("%d",&k); 
k = k / 2  1; 

上半部分的菱形

for(i=1,n=1; i<= k; i  )
{
	n = 2*i-1;
	for(j=k-i; j>0; j--)
	{
		printf(" ");
	}
	for(z=0; z< n; z  )
	{
		printf("*");
	}
	printf("\n");
}

当上半部分编写完成后,我们需要将星号的数量n减少2,因为我们将中间行也归到了上半部分中。
n-=2;

for(i=0; i0; z--)
	{
		printf("*");
	}
	printf("\n");
}

下半部分菱形

运行结果
完整代码:

#include
int main()
{	
	int i,j,z,n,k;
	printf("请输入菱形的行数:\n"); 
	scanf("%d",&k); 
	k = k / 2  1; 
	for(i=1,n=1; i<= k; i  )
	{
		n = 2*i-1;
		for(j=k-i; j>0; j--)
		{
			printf(" ");
		}
		for(z=0; z< n; z  )
		{
			printf("*");
		}
		printf("\n");
	}
	n-=2;
	for(i=0; i0; z--)
		{
			printf("*");
		}
		printf("\n");
	}
	return 0;
} 
网站地图