网站建设资讯

NEWS

网站建设资讯

C语言—打印菱形,过程分析非常详细-创新互联

如何打印菱形,过程分析非常详细

在这里插入图片描述

成都创新互联公司,为您提供重庆网站建设公司成都网站制作、网站营销推广、网站开发设计,对服务成都门帘等多个行业拥有丰富的网站建设及推广经验。成都创新互联公司网站建设公司成立于2013年,提供专业网站制作报价服务,我们深知市场的竞争激烈,认真对待每位客户,为客户提供赏心悦目的作品。 与客户共同发展进步,是我们永远的责任!

思路:
要打印这个图形,我们应该一行行得去打印,每一行先打印空格,再打印星号,比如,第一行我们应该先打印3个空格再打印1个星号。
我们可以发现前四行空格数在减少,后三行空格数在增加,所以将这个图形分为两部分,前面四行为第一部分,后三行为第二部分。
我们可以发现,每一行都在重复两个动作,打印空格和打印星号,所以我们很容易想到用循环。
然后我们通过找每一行的空格数与这行数的关系 和 每一行星号与行数的关系来构造循环,这道题比较适合用for循环。

具体分析:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
这样就把i,j,k关系弄清楚了,接下来就是写代码,具体代码如下:

//打印菱形
#includeint main()
{int i = 0;//i控制第几行
	int j = 0;//j控制每一行空格的循环次数
	int k = 0;//k控制每一行*的循环次数
	for (i = 1; i<= 4; i++)//将图形分为两部分,前四行(第一部分)
	{for (j = 1; j<= 4 - i; j++)//打印第i行的空格数
		{	printf(" ");
		}
		for (k = 1; k<= 2 * i - 1; k++)//紧接着打印第i行的*数,注意要带乘号*
		{	printf("*");
		}
		printf("\n");//第i行完成,要换行\n,进入下一行的循环
	}
	
	for (i = 1; i<= 3; i++)//后三行(第二部分),和前四行同样的道理
	{for (j = 1; j<= i; j++)
		{	printf(" ");
		}
		for (k = 1; k<= 7 - 2 * i; k++)
		{	printf("*");
		}
		printf("\n");//打印完一行后记得换行\n
	}
	return 0;
}

运行结果如下:
在这里插入图片描述

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


当前题目:C语言—打印菱形,过程分析非常详细-创新互联
网站URL:http://cdweb.net/article/dgecei.html