洛辰m
2018-09-12 15:33
public class HelloWorld {
public static void main(String[] args) {
System.out.println("打印直角三角形");
// 外层循环控制行数
for (int i = 1; i<=3;i++) {
// 内层循环控制每行的*号数
// 内层循环变量的最大值和外层循环变量的值相等
for (int j = 1;j<=i;j++ ) {
System.out.print("*");
}
// 每打印完一行后进行换行
System.out.println();
}
}
}
for(int j = 1;j<=i;j++)这个循环完后,j进行了重新赋值,所以到第二行的时候,i = 2,j = 1,循环一次,打印一次*,自加1,j = 2,j<=i,又打印一次*,第三次一样
第一行打印一个*,第二行打印2个*,第三行打印3个*,当i=1时,执行内循环一次,当i=2时执行内循环2次,当i=3时执行内循环为3次,每执行一次打印一个*
这是我进步的证明啊!(脸好疼!)
当i=1时,j赋值等于1,条件成立,输出第1行的1个*,然后j自增1,条件不成立,退出循环。
*
当i=2时,j重新赋值为1,条件成立,输出第1个*,然后j自增1,条件成立,进行循环,输出第2个*,然后j再自增1,条件不成立,退出循环。
**
以此类推
***
****
*****
(如有错漏欢迎指正)
不好意思,我上面的话不要放在心上,直接退出循环了。
i是行数,j是一行几个*,
当i=1时,j赋值等于1,条件成立,输出第1行的1个*,然后j自增1
当i=2时,j自增后等于2,条件成立,输出第2行的2个*,然后j再自增1
以此类推
*
**
***
****
*****
(如有错漏欢迎指正)
把j<=i换成j==i就行了,因为j<=i的话第二次就是i=2 j=1
因为j=1满足j<=1的条件所以直接进行循环了
Java入门第一季(IDEA工具)升级版
1165182 学习 · 17581 问题
相似问题