新人表示总结出规律后,小意思啦~
使用方法:嵌套for循环
1.外层循环控制的是执行的轮数,内层循环控制的是这一轮中执行的次数
2.外层循环控制的是图形的行数,内层循环控制的是这一行的列数
直角三角形:
规律:
1.外层for循环,循环条件 i 值设定具体边长
2.内层for循环,循环条件 j 值与外层循环 i 值挂钩(打印空格加*)
//直角三角形
for (int i = 0; i <= 5; i++) {
for (int j = 0; j <= i; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
倒直角三角形:
规律:(对比上面直角三角形)
1.外层for循环全部相反:开始条件0改成5,循环条件 '<'号 改成 '>'号,更改条件 ++ 改成 --
2.内层for循环不变(打印空格加*)
//倒直角三角形
for (int i = 5; i >= 0; i--){
for (int j = 0; j <= i; j++){
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
或者
1.内层for循环全部相反:开始条件0改成5,循环条件 '<'号 改成 '>'号,更改条件 ++ 改成 --
2.外层for循环不变(打印空格加*)
//倒直角三角形
for (int i = 0; i <= 5 ; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" *");//打印空格加*
}System.out.println();//打印空格
}
结论:对比直角三角形,外层和内层循环哪一个相反,都可以打印出倒直角三角形
矩形或正方形:
规律:(最简单)
1.外层for循环和内层for循环一模一样
2.内层打印标志符,外层打印换行(打印空格加*)
//矩形或正方形
for (int i = 0; i < 5; i++) {
for (int j = 0; j < 5; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
正三角形:
规律:
1.外层for循环正常不变
2.第一个内层for循环,与外层for循环全部相反:开始条件0改成5,循环条件 '<'号 改成 '>'号,更改条件 ++ 改成 --(相当于打印一个空格组成的倒直角三角形)
并且循环条件 j 值与外层循环 i 值挂钩
(打印的是空格)
3.第二个内层for循环,与外层for循环一样,只是循环条件 j 值与外层循环 i 值挂钩(打印空格加*)
注意:两个内层for循环循环条件 j 值与外层循环 i 值全部挂钩,不赋值
//正三角形
for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" ");//打印空格
}
for (int j = 0; j <= i; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
倒正三角形:
规律:(对比上面正三角形)
1.外层循环不变,第二个内层for循环和第三个内层for循环互换位置,打印内容不换
(第二层for循环相当于先打印一个空格组成的直角三角形)
//倒正三角形
for (int i = 0; i <= 5 ; i++) {
for (int j = 0; j <= i ; j++) {
System.out.print(" ");//打印空格
}
for (int j = 5; j >= i ; j--) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
平行四边形:
规律:(对比正三角形)
1.可以说和正三角形打印一模一样
2.唯一要改的地方:第二个内层for循环的循环条件,正三角形的 j <= i 改成 j <= 5 ,换成赋值就行啦
正三角形
//正三角形
for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" ");//打印空格
}
for (int j = 0; j <= i; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
自己对比一下
平行四边形
//平行四边形
for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" ");//打印空格
}
for (int j = 0; j <= 5; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
菱形:
规律:
1.就是上面一个正三角形,下面一个倒正三角形,拼起来就行
2.唯一要改的地方:下面倒正三角形,除了外层for循环开始条件的数值0不修改,其它三层for循环的所有数值减1,就能完美拼接
正三角形
//正三角形
for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" ");//打印空格
}
for (int j = 0; j <= i; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
拼接
倒正三角形
//倒正三角形
for (int i = 0; i <= 4 ; i++) {
for (int j = -1; j <= i ; j++) {
System.out.print(" ");//打印空格
}
for (int j = 4; j >= i ; j--) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
唯一改正后
菱 形
//菱形
//正三角形
for (int i = 0; i <= 5; i++) {
for (int j = 5; j >= i ; j--) {
System.out.print(" ");//打印空格
}
for (int j = 0; j <= i; j++) {
System.out.print(" *");//打印空格加*
}System.out.println();
}
//倒正三角形
for (int i = 0; i <= 4 ; i++) {
for (int j = -1; j <= i ; j++) {
System.out.print(" ");//打印空格
}
for (int j = 4; j >= i ; j--) {
System.out.print(" *");//打印空格加*
}System.out.println();//换行
}
我是刚入行的新人,以上规律都是我原创总结,分享给其他新人哈~