/**想打印菱形:1:它是有一正一反两个三角形组成; 2:①正三角形我就需要它是在“四边形”的基础上向里面加入符号;“然而正四边形是用两个镶嵌的‘for’语句来实行的, ②如果想把‘四边形’变成‘三角形’就需要想‘四边形’里面有规律的添入“符号”,先想正三角它是‘上尖下宽’,所以我就需要‘符号’是从上向下递增的插入。 ③然而第一个for循环语句是显示‘行号’的,我要让它显示在最后,我就要把第一个for循环语句的初始值设的大些,好让正三角形的外边显示出来,在想第二个for循环语句是在每行中递进显示的所以这里就需要用到“if...else....”循环语句, ④在这里我们要找出我面想要的‘正三边形’的里面的那条边,所以我要先用一个if(a>i)...else...循环语句来实现实心菱形再在实心菱形中找我想要的边, ⑤而这时就会发现我想要的边是最外面的数字,而且是每一行的第一个,这个数字正好是比'i'大一的数,所以我在这只 需要再用一个if...else..语句来取走我想要最外围的边就行。if的条件是(a == (i+1))”这就是我想要的边,别的就要用“空号”来表示,所以在两个else语句中输出的都是“空格号”。 3 再想反三角形,它是和正三角形相反的所以第一个for 语句中要把初始值定成“2”,因为上一个正三角形结束时最后一行取 的值是1,所以我们要比它大。然后再一次递增。*/class Lingx{ public static void main(String[] srga){ int i; int a; for(i = 8;i > 0; i-- ){ for(a=0; a < 9; a++){ if(a > i){ if(a == (i+1)){ System.out.print(a); }else{ System.out.print(' '); } } System.out.print(' '); } System.out.println(i); } for(i =2;i < 9 ;i++){ for(a=0; a < 9; a++){ if (a>i){ if(a == (i+1)){ System.out.print(a); }else{ System.out.print(' '); } } System.out.print(' '); } System.out.println(i); } } }