Java怎么用for循环打星号"*",打出一个空心菱形?
答案:4 悬赏:80 手机版
解决时间 2021-07-19 12:14
- 提问者网友:十年饮冰
- 2021-07-18 16:10
Java怎么用for循环打星号"*",打出一个空心菱形?
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-07-18 17:04
public class Test {
public static void print(int n){
int index1 = n/2;
int index2 = index1;
for (int i = 0; i < n; i++){
for (int j = 0; j < 2 * n - 1; j++){
if (j == index1 || j == index2){
System.out.print("*");
} else{
System.out.print(" ");
}
}
if ( i >= n / 2){
index1 += 2;
index2 -= 2;
} else{
index1 -= 2;
index2 += 2;
}
System.out.println();
}
}
public static void main(String args[]){
print(9);
}
}
public static void print(int n){
int index1 = n/2;
int index2 = index1;
for (int i = 0; i < n; i++){
for (int j = 0; j < 2 * n - 1; j++){
if (j == index1 || j == index2){
System.out.print("*");
} else{
System.out.print(" ");
}
}
if ( i >= n / 2){
index1 += 2;
index2 -= 2;
} else{
index1 -= 2;
index2 += 2;
}
System.out.println();
}
}
public static void main(String args[]){
print(9);
}
}
全部回答
- 1楼网友:由着我着迷
- 2021-07-18 20:14
看到过此题,本人还是初级javaa水平,解决不了。共同进步啊!!!!!!!!
- 2楼网友:像个废品
- 2021-07-18 18:45
我给你写了一个,参考一下吧。。
import java.util.*; public class H { public static void main(String args[]) { int a,b,c,N; System.out.println("请输入菱形的边长N"); N=new Scanner(System.in).nextInt(); for(a=0;a<N;a++) { for(b=0;b<=N-a;b++) System.out.print(" "); for(c=1;c<=2*a-1;c++) { if(c==1||c==2*a-1) System.out.print("*"); else System.out.print(" "); } System.out.print("\n"); } for(a=0;a<=N;a++) { for(b=0;b<=a;b++) System.out.print(" "); for(c=1;c<=2*(N-a)-1;c++) if(c==1||c==2*(N-a)-1) System.out.print("*"); else System.out.print(" "); System.out.print("\n"); } } }
- 3楼网友:蕴藏春秋
- 2021-07-18 18:26
package com.ga.isl.test;
public class CubeTest { public static void main(String[] args) { for(int i = 0;i<3;i++){ for(int j=0;j<3;j++){ if( 1 == (i+j)%2){ System.out.print("*"); }else{ System.out.print(" "); } } System.out.println(); } }}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯