package diqijiangzuoye;
public class Lingxing {
public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("-------打印菱形------");
for(int i=1;i<=5;i++) {
for(int j=1;j<=5-i;j++) {
System.out.println(" ");
}
for(int k=1;k<=2*i-1;k++) {
System.out.println("*");
}
System.out.println();
}
for(int i=4;i>=1;i--) {
for(int j=1;j<=5-i;j++) {
System.out.println(" ");
}
for(int j=1;j<=2*i-1;j++) {
System.out.println("*");
}
System.out.println();
}
}
}
结果如下
System.out.println("*");
println是输出之后换行的意思
你这里应该System.out.print("*");
打印空格的时候使用System.print()方法就好,这样就不会换行了
System.out.println方法是换行的意思,你循环语句里面都是用这个方法打印的,所以导致你的每个星星都是换行的,不换行的方法用:System.out.print()打印
打印一个菱形可以参考我下面编写的代码:
int a = 5;
//正等腰三角形
for (int i = 0; i < a; i++) {
for (int l = a; l > i; l--) {
System.out.print(" ");
}
for (int j = 0; j < 2*i-1; j++) {
System.out.print("*");
}
System.out.println();
}
//倒等腰三角形
for (int i = a-1; i > 0; i--) {
for (int k = a; k >= i; k--) {
System.out.print(" ");
}
for (int j = 2*i-3; j > 0; j--) {
System.out.print("*");
}
System.out.println();
}
如若有用,还请博友采纳!感谢啦!!!!