600字范文,内容丰富有趣,生活中的好帮手!
600字范文 > Java输出菱形图案

Java输出菱形图案

时间:2019-11-29 00:53:40

相关推荐

Java输出菱形图案

打印如下的图形:菱形

*

* *

* * *

* * * *

* * * * *

* * * *

* * *

* *

*

这里有几种解法:

从图形中可以看出,“*”中间有空格隔开,且各行开头处可以有逐级减少的空格。“*”与空格可以视为一个整体

1.只有for循环

可以选择用两个for循环分别控制空格与“*”的输出。在这两个循环体外还需一个循环体用以控制输出的次数。其中内部两个循环体的判断条件可以与最外层关联。

package pany;public class Main {public static void main(String[] args) {for (int i=1;i<=5;i++){for (int j=5-i;j>0;j--) {System.out.print(" ");}for (int m=0;m<i;m++) {System.out.print(" *");}System.out.println(" ");}for (int i=1;i<=5;i++){for (int j=i;j>0;j--) {System.out.print(" ");}for (int m=5;m>i;m--) {System.out.print(" *");}System.out.println(" ");}}}

2.数组与for循环连用

由图可以看出“*”的输出很有规律,因此可以选择添加一个数组,对其中的数据进行%处理,再进行for循环操作。

package pany;public class Main {public static void star(int[] a, int b) {for (int i = 0; i < a.length; i++) {if (a[i] % 2 == 1) {System.out.print("*");} else {System.out.print(" ");}a[i] = a[i] + b;}System.out.println(" ");}public static void main(String[] args) {int[] arr = {-3, -2, -1, 0, 1, 0, -1, -2, -3};for (int i = 0; i < 5; i++) {star(arr, 1);}int[] arr1 = {0, 1, 2, 3, 4, 3, 2, 1, 0};for (int i = 0; i < 4; i++) {star(arr1, -1);}}}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。