首先打印一个空心矩形非常简单,一个小小的嵌套循环就可以了。那么我们要得到一个空心的,该有什么想法呢?我们来画图
***** *****
***** *---*
***** *---*
***** *---*
***** *****
老师和我们,说过了外循环可以控制行数,内循环可以控制列数。那么大家有没有想到,1:只要外循环保持在第一轮和最后一轮的时候,即外循环最开始和最后一次的时候我们就可以全部用*,用x表示行数,y表示列数。是否当x是1, 5的时候我们都打实心,否则都用空格表示。
2:y表示列数,如果不管外循环循环到第几次,只要到了内循环的第一次和最后一次我们都用*来表示,其它位置就用空格
3:所以我们要用到判断语句了- for (int y = 1;y<=5 ;y++ )
- {
- if (x==1||x==5||y==1||y==5)
- {
- System.out.print("*");
- }
-
- else
- {
- System.out.print(" ");
- }
- }
- System.out.println();
- }
复制代码 以上就是一个空心矩形了
同理做一个空心菱形,我们先做一个实心的,一个等腰正三角和一个比上面小一号的等腰倒三角就可以。要把中间那掏空。我们只要有一个思想就是我们只要边所在的地方就是*,其它的都是空格就行
*
* *
* *
* *
* *
* *
* *
* *
*
- for(int x = 1;x<=5;x++)
- {
- for (int y= x;y<=4 ;y++ )
- {
- System.out.print(" ");
- }
- for (int z =1;z<=x ;z++ )
- {
- if (z==1||z==x)
- {
- System.out.print("* ");
- }
- else
- {
- System.out.print(" ");
- }
- }
- System.out.println();
- }
- for (int x=1;x<=4 ;x++ )
- {
- for (int y=1;y<=x ;y++ )
- {
- System.out.print(" ");
- }
- for (int z=x;z<=4 ;z++ )
- {
- if(z==x||z==4)
- {
- System.out.print("* ");
- }
- else
- {
- System.out.print(" ");
- }
- }
- System.out.println();
- }
复制代码
|