****
****
****
****
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j<4;j++) {
System.out.print("*");//连续打印*,不换行
}
System.out.println();//换行
}
}
***
***
***
***
public static void main(String[] args) {
for(int i=0;i<4;i++) {//i控制行
for(int j=0;j<3;j++) {//j控制列
System.out.print("*");
}
System.out.println();
}
}
*
**
***
****
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j1;j++) {//j是随着i的变化而变化的
System.out.print("*");
}
System.out.println();
}
}
****
***
**
*
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j<4-i;j++) {
System.out.print("*");
}
System.out.println();
}
}
*
**
***
****
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j<3-i;j++) {
System.out.print(" ");
}
for(int j=0;j1;j++) {
System.out.print("*");
}
System.out.println();
}
}
这个就是同一行先打印空格在再打印星号~因为空格和星号的变化规律不一样所以就分开写啦,行数控制的循环(外循环)其实没变的!
****
***
**
*
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j" ");
}
for(int j=0;j<4-i;j++) {
System.out.print("*");
}
System.out.println();
}
}
思路和上面一样(:з」∠)
*
***
*****
*******
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j<3-i;j++) {
System.out.print(" ");
}
for(int j=0;j<(i+1)*2-1;j++) {
System.out.print("*");
}
System.out.println();
}
}
上面的这种是直接通过观察行和列的关系写的!
第1行 1个* 1=1*2-1
第2行 3个* 3=2*2-1
第3行 5个* 5=3*2-1
。。。 j=i*2-1
下面这种是通过分割这个三角形,分成每行*增加一个的两个直角三角形。
*|
**|*
***|**
****|***
public static void main(String[] args) {
for(int i=0;i<4;i++) {
for(int j=0;j<3-i;j++) {
System.out.print(" ");
}
for(int j=0;j1;j++) {
System.out.print("*");
}
for(int j=0;j"*");
}
System.out.println();
}
}
1x1=1
2x1=2 2x2=4
3x1=3 3x2=6 3x3=9
4x1=4 4x2=8 4x3=12 4x4=16
5x1=5 5x2=10 5x3=15 5x4=20 5x5=25
6x1=6 6x2=12 6x3=18 6x4=24 6x5=30 6x6=36
7x1=7 7x2=14 7x3=21 7x4=28 7x5=35 7x6=42 7x7=49
8x1=8 8x2=16 8x3=24 8x4=32 8x5=40 8x6=48 8x7=56 8x8=64
9x1=9 9x2=18 9x3=27 9x4=36 9x5=45 9x6=54 9x7=63 9x8=72 9x9=81
public static void main(String[] args) {
for(int i=1;i<10;i++) {
for(int j=1;j1;j++) {
System.out.print(i+"x"+j+"="+i*j+"\t");
}
System.out.println();
}
}
这个i和j等于0开始会比较方便!可以直接用于乘法口诀的内容。
“\t”这个是制表符!可以很完美的让每一行每一个对齐!强迫症的首选!
*
***
*****
***
*
public static void main(String[] args) {
for(int i=0;i<3;i++) {
for(int j=0;j<2-i;j++) {
System.out.print(" ");
}
for(int j=0;j<(i+1)*2-1;j++) {
System.out.print("*");
}
System.out.println();
}
for(int i=0;i<2;i++) {
for(int j=0;j1;j++) {
System.out.print(" ");
}
for(int j=0;j<(2-i)*2-1;j++) {
System.out.print("*");
}
System.out.println();
}
}
嘿呀,就是上下两个三角形拼起来
*
* *
* *
* *
*
public static void main(String[] args) {
for(int i=0;i<3;i++) {
for(int j=0;j<2-i;j++) {
System.out.print(" ");
}
for(int j=0;j<(i+1)*2-1;j++) {
if(j==0||j==(i+1)*2-2) {
System.out.print("*");
}else System.out.print(" ");
}
System.out.println();
}
for(int i=0;i<2;i++) {
for(int j=0;j1;j++) {
System.out.print(" ");
}
for(int j=0;j<(2-i)*2-1;j++) {
if(j==0||j==(2-i)*2-2) {
System.out.print("*");
}else System.out.print(" ");
}
System.out.println();
}
}
输出星号的时候判断一下,如果是第一个或者最后一个再打印,如果都不是,就打印空格。
我觉得还是必须先确定这个循环控制什么的,起点在哪结束条件是什么,然后分析一下行和列的关系,递增、递减,找找规律!一定要先理清楚外面的循环再写里面的循环(:з」∠)