利用java打印出金字塔圖案
阿新 • • 發佈:2019-02-08
分析:
想要得到上述圖片樣式,一個是要實現列印*數量的遞增 另一個是要考慮每行的填充,用什麼填充 當然是空格了!
程式碼如下:
import java.util.Scanner; public class First { public static void main(String[] args) { int i,j,k,n; Scanner input=new Scanner(System.in); System.out.print("請輸入金字塔層數:"); n=input.nextInt();//外層迴圈控制層數 for(i=1;i<=n;i++) { //根據外層行號,輸出星號左邊空格 for(j=1;j<=n-i;j++) System.out.print(" ");//根據外層行號,輸出星號個數 for(k=1;k<=2*i-1;k++) System.out.printf("*");//一行結束,換行 System.out.printf("\n"); } } }
實現2
import java.util.Scanner; public class First { public static void main(String[] args) { int i,j,k,n; Scanner input=new Scanner(System.in); System.out.print("請輸入金字塔層數:"); n=input.nextInt();//外層迴圈控制層數 for(i=1;i<=n;i++) { for(j=i;j<=n;j++) System.out.print(" ");//根據外層行號,輸出星號個數 for(k=1;k<=i;k++) System.out.printf("* ");//一行結束,換行 System.out.printf("\n"); } } }
得到了三角形後我們還想得到一個菱形怎麼辦?
分析:只需要上邊一個正三角形下邊一個倒三角型即可
實現程式碼:
import java.util.Scanner; public class First { public static void main(String[] args) { int i,j,k,n; Scanner input=new Scanner(System.in); System.out.print("請輸入菱形上三角層數:"); n=input.nextInt();//外層迴圈控制層數 for(i=1;i<=n;i++) { for(j=i;j<=n;j++) System.out.print(" "); for(k=1;k<=i;k++) System.out.printf("* "); System.out.printf("\n"); } for(i=2;i<=n;i++) { for(k=1;k<=i;k++) System.out.print(" "); for(j=i;j<=n;j++) System.out.printf("* "); System.out.printf("\n"); } }
平行四邊形實現
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
int i,j,k,n;
Scanner input=new Scanner(System.in);
System.out.print("請輸入平行四邊形層數:");
n=input.nextInt();//外層迴圈控制層數
for(i=1;i<=n;i++)
{
for(k=1;k<=i-1;k++)
System.out.print(" ");
for(j=1;j<=2*n;j++)
System.out.printf("*");
System.out.printf("\n");
}
}
}
java九九乘法表的實現
分析:三角形的變種,利用巢狀for迴圈實現
import java.util.Scanner;
public class First
{
public static void main(String[] args)
{
//外迴圈控制行數
for(int i=1;i<10;i++)
{
//內迴圈控制每行表示式個數
for(int j=1; j<=i; j++)
{
System.out.print(" "+i+"*"+j+"="+(i*j));
}
//一行結束換行
System.out.println();
}
}
}