教你用数学思维KO循环嵌套---打印菱形
打印菱形:
注意分析:以下问题是for循环实现的。只要是循环,必须有三要素:01循环初始值,02循环控制表达式,我称之为循环结束值,03是循环变量递增,递减的规律。
在解决问题的过程中,相信最让我们头疼的是循环控制表达式,即循环结束值不好确定。**教你一招:**首先,你一定要相信有规律。循环嵌套,一般是向内循环变量找外循环变量的关系。想一想,数学当中,描述变量之间的关系是不是函数?所以可以借助函数关系求解外循环变量和内循环变量的关系。因为它们都是一元二次的函数,故借助Y=aX+b,的模型求解。由此肯定可以找出外循环变量i与内循环变量j的函数关系。多动手试试,不行你就再试试。
#include <stdio.h>
#include <stdlib.h>
main()
{ system("color f4");
int i,j,k;
//前四行
for(i=1;i<=4;i++)
{ { for(k=1;k<=4-i;k++)
printf(" ");
}
for(j=1;j<=2*i-1;j++)
{ printf("*");
}
printf("\n");
}
//后三行
for(i=1;i<=3;i++)
{ for(k=1;k<=i;k++)
{printf(" ");
}
for(j=1;j<=7-2*i;j++)
{printf("*");
}
printf("\n");
}
}