骑着鲸鱼去旅行
2017-04-16 20:02
是由行数 i 控制的,观察输出的三角形(假设该三角形是由5行构成)你会发现 每一行 * 的数量为 2*i+1(i 从零开始),每一行空格的数量为 5-i (i 从1开始)(for(int i=0;i<5;i++){
for(int j=1;j<5-i;j++)
printf(" ");
{
for(k=0;k<2*i+1;k++)
printf("*");
}
printf("\n");
}
为什么每一行空格的数量为 5-i ,按照图片上面的来看,第一行应该有6个空格+1个星星;第二行应该有4个空格+2个星星;第三行应该有2个空格+5个星星;第四行应该有0个空格+7个星星;每行的个数加起来都都为7才对啊!
请大神帮我解答一下,我已经想了两天了但还是想不出个所以然来!
不知道你的空格是怎么数的,不过这不重要,你只需要逐层递减一个空格就行了。5个也好,6个也好,7个也好都行
首先,同学你认为的第一行应该有6个空格就是错的,是5个,并且逐层减1,而星星的要求是逐层加2,你要看清楚题目的要求哦!
C语言入门
926020 学习 · 20793 问题
相似问题