请教一下!金字塔这个问题!!!!

hz0369 2017-10-29 08:51:12
package Tset;

import java.util.Scanner;

public class test {

public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
System.out.print("請輸入行數:");
int line =scan.nextInt();
for (int i=1;i<=line;i++){
int start =2*i-1;
int space=line-1;
for (int j=0;j<space;j++){
System.out.print(' ');
}
for (int k=1;k<=start;k++){
System.out.print('*');
}
System.out.println();
}
}
}
请问下这个代码哪里有问题 ,输出的不是金字塔形状。。。
...全文
441 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
fcyh 2017-11-06
  • 打赏
  • 举报
回复
import java.util.*;
public class Test{
public static void main(String [] args){
Scanner ss = new Scanner(System.in);
System.out.println("请输入金字塔的层数:");
int cengshu = ss.nextInt();
for(int i=0;i<cengshu;i++){
for(int j=cengshu-1;j>i;j--){
System.out.print(" ");

}
int a = i;
for(int t=0;t<2*a+1;t++){
System.out.print("*");
}
System.out.println();	

}


}

}
TE_apple 2017-11-04
  • 打赏
  • 举报
回复
import java.util.*; public class Test{ public static void main(String [] args){ Scanner ss = new Scanner(System.in); System.out.println("请输入金字塔的层数:"); int cengshu = ss.nextInt(); for(int i=0;i<cengshu;i++){ for(int j=cengshu-1;j>i;j--){ System.out.print(" "); } int a = i; for(int t=0;t<2*a+1;t++){ System.out.print("*"); } System.out.println(); } } } 金字塔方法2
TE_apple 2017-11-03
  • 打赏
  • 举报
回复
import java.util.*; public class Test{ public static void main(String [] args){ Scanner ss=new Scanner(System.in); System.out.println("请输入金字塔层数:"); int cengshu=ss.nextInt(); for(int i=1;i<=cengshu;i++){ for(int j=i-1;j<=cengshu-1;j++){ System.out.print(" "); } int t=i; for(int x=1;x<=2*t-1;x++){ System.out.print("*"); } System.out.println(); } } } 金字塔
不会VS 2017-10-31
  • 打赏
  • 举报
回复
package Test; import java.util.Scanner; public class practice { public static void main(String[] args) { Scanner scan=new Scanner(System.in); System.out.print("請輸入行數:"); int line =scan.nextInt(); for(int i=1;i<=line;i++){ for(int j=1;j<=line-i;j++) System.out.print(' '); for(int k=1;k<2*i-1;k++) System.out.print('*'); System.out.print('\n'); } } }
自由自在_Yu 2017-10-30
  • 打赏
  • 举报
回复
改成int space = line - i;//空格是越来越少的,line - 1是个固定值
sinat_40844844 2017-10-30
  • 打赏
  • 举报
回复
上面是我修改的,跟前面几个的说法一样,但是我还是比较习惯从0开始,适应编程的计数方式
sinat_40844844 2017-10-30
  • 打赏
  • 举报
回复
package Test; import java.util.Scanner; public class practice { public static void main(String[] args) { Scanner scan=new Scanner(System.in); System.out.print("請輸入行數:"); int line =scan.nextInt(); for (int i = 0;i < line; i++){ int start =2*i+1; int space=line-1-i; for (int j=0;j<space;j++){ System.out.print(' '); } for (int k=0;k<start;k++){ System.out.print('*'); } System.out.println(); } } }
java小白脸 2017-10-29
  • 打赏
  • 举报
回复
你试试改为int space≡line-i;
java小白脸 2017-10-29
  • 打赏
  • 举报
回复
space 值一直未变,每一行前的空格都是相等的!所以不是金字塔样子!

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧