你们两个都在瞎扯,你们两个打出来的叫杨辉三角吗 如果这个也算的话,你们两个都应该回初中了 看看我下面的代码就明白了, 如果还不明白,百度一下 最好写上自己的更正,不要在这里误导别人送你一个可以自己输入行数的杨辉三角,有一点觉得不好的地方在于 行数超过三十行,显示可能会出现问题,楼主可以自己想办法改一下 对自己还是有好处的public class SanJiao { /** * @param args */ public static void main(String[] args) { // TODO 自动生成方法存根 Scanner in = new Scanner(System.in); System.out.println("输入要显示的杨辉三角的行数"); int n = in.nextInt(); int i, j, a[][] = new int[n][]; for (i = 0; i < n; i++) { a[i] = new int[i + 1]; a[i][i] = 1; a[i][0] = 1; } for (i = 2; i < n; i++) for (j = 1; j <= i - 1; j++) a[i][j] = a[i - 1][j - 1] + a[i - 1][j]; for (i = 0; i < n; i++) { for (int k = 0; k < n - i; k++) { System.out.printf("%4s", " "); } for (j = 0; j <= i; j++) { System.out.printf("%8d", a[i][j]); } System.out.println(); } System.out.println(); }}
1
1 2 1
1 2 3 2 1
1 2 3 4 3 2 1
1 2 3 4 5 4 3 2 1 再次谢谢大家。
编写语言用JAVA
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Triangle ObjTriangle=new Triangle();
ObjTriangle.printTriangle();
}
public void printTriangle(){
for(int i=4;i>=0;i--){
for(int k=i;k>=0;k--){
System.out.print(" ");
}
int j=1;
for(;j<=5-i;j++){
System.out.print(j);
}
j=j-2;
for(;j>0;j--){
System.out.print(j);
}
System.out.println();
}
}}
经过测试,已经可以打印出来了。
不知道还有没有比较好的算法,个人认为楼上的算法好像不是最优的。
如果这个也算的话,你们两个都应该回初中了
看看我下面的代码就明白了,
如果还不明白,百度一下
最好写上自己的更正,不要在这里误导别人送你一个可以自己输入行数的杨辉三角,有一点觉得不好的地方在于
行数超过三十行,显示可能会出现问题,楼主可以自己想办法改一下
对自己还是有好处的public class SanJiao { /**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
Scanner in = new Scanner(System.in);
System.out.println("输入要显示的杨辉三角的行数");
int n = in.nextInt();
int i, j, a[][] = new int[n][];
for (i = 0; i < n; i++) {
a[i] = new int[i + 1];
a[i][i] = 1;
a[i][0] = 1;
}
for (i = 2; i < n; i++)
for (j = 1; j <= i - 1; j++)
a[i][j] = a[i - 1][j - 1] + a[i - 1][j];
for (i = 0; i < n; i++) {
for (int k = 0; k < n - i; k++) {
System.out.printf("%4s", " ");
}
for (j = 0; j <= i; j++) {
System.out.printf("%8d", a[i][j]);
}
System.out.println();
}
System.out.println();
}}
我个人认为“yczz(飞鸟) ”的解答是生硬打印出来的。