需求描述:通过从键盘输入选项来实现相关打印功能。提供一系列的可供选择的选项,如:
选项A,打印直线(用符号*或者#来展示)
选项B,打印杨辉三角形 (提供数字输入,如输入3,打印三行的三角形,输入i,打印i
行的三角形。)
import java.util.Scanner;
public class Main {
public static void main(String args[]) {
Scanner sz=new Scanner(System.in);
System.out.println("请给出你的选择:A或B");
String a=sz.next();
switch(a){
case "A":
System.out.println("**********");
break;
case "B":
asd();
break;
}
}
public static void asd() {
System.out.println("输出行数:");
Scanner scan = new Scanner(System.in);
int n = scan.nextInt();
int a[][] = getTri(n);
printTri(a);
}
public static int[][] getTri(int n) {
int[][] a = new int[n][n];
for (int i = 0; i < n; i++) {
a[i][0] = a[i][i] = 1;
}
for (int i = 2; i < a.length; i++) {
for (int j = 1; j < i; j++) {
a[i][j] = a[i - 1][j] + a[i - 1][j - 1];
}
}
return a;
}
public static void printTri(int[][] a) {
for (int i = 0; i < a.length; i++) {
for(int j = 0;j<a.length-1-i;j++) {
System.out.print(" ");
}
for(int j = 0;j<=i;j++) {
System.out.print(" ");
System.out.printf("%-3d",a[i][j]);
}
System.out.println();
}
}
}
结果: