zoukankan      html  css  js  c++  java
  • Java打印实心、空心的三角形和菱形

    1.实心三角形

    代码:

     1 import java.util.Scanner;
     2 
     3 public class Test {
     4 
     5     public static void main(String[] args) {
     6         int rows;
     7         Scanner sc = new Scanner(System.in);
     8         System.out.println("Please input rows:");
     9         rows = sc.nextInt();
    10         sc.close();
    11         for (int i = 1; i <= rows; i++) {//控制打印行数
    12             for (int j = 1; j <= rows - i; j++) {//控制每行打印空格数
    13                 System.out.print(" ");
    14             }
    15             for (int j = 1; j <= i * 2 - 1; j++) {//控制打印星号数
    16                 System.out.print("*");
    17             }
    18             System.out.println();//每打一行,换行
    19         }
    20     }
    21 
    22 }
    View Code

    2.空心三角形

    代码:

     1 import java.util.Scanner;
     2 
     3 public class Test {
     4     public static void main(String[] args) {
     5         int rows;
     6         Scanner sc = new Scanner(System.in);
     7         System.out.println("Please input rows:");
     8         rows = sc.nextInt();
     9         sc.close();
    10         for (int i = 1; i <= rows; i++) {
    11             for (int j = 1; j <= rows - i; j++) {
    12                 System.out.print(" ");
    13             }
    14             for (int j = 1; j <= 2 * i - 1; j++) {
    15                 if (i == 1 || i == rows) { // 如果是第一行或最后一行,打印所有星号
    16                     System.out.print("*");
    17                 } else if (j == 1 || j == 2 * i - 1) { // 如果是每行的第一个或者最后一个,打印星号
    18                     System.out.print("*");
    19                 } else { // 其余打印空格
    20                     System.out.print(" ");
    21                 }
    22             }
    23             System.out.println();
    24         }
    25     }
    26 }
    View Code

    3.实心菱形

    代码:

     1 import java.util.Scanner;
     2 
     3 public class Test {
     4     public static void main(String[] args) {
     5         int rows;
     6         Scanner sc = new Scanner(System.in);
     7         System.out.println("Please input odd rows:");// 只能是奇数行
     8         rows = (sc.nextInt() + 1) / 2;// 上半部分行数
     9         sc.close();
    10         for (int i = 1; i <= rows; i++) {
    11             for (int j = 1; j <= rows - i; j++) {
    12                 System.out.print(" ");
    13             }
    14             for (int j = 1; j <= 2 * i - 1; j++) {
    15                 System.out.print("*");
    16             }
    17             System.out.println();
    18         }
    19         for (int i = rows - 1; i >= 1; i--) { // 下半部分不可重复打印上半部分最后一行,i=rows-1)
    20             for (int j = 1; j <= rows - i; j++) {
    21                 System.out.print(" ");
    22             }
    23             for (int j = 1; j <= 2 * i - 1; j++) {
    24                 System.out.print("*");
    25             }
    26             System.out.println();
    27         }
    28     }
    29 }
    View Code

    4.空心菱形

    代码:

     1 import java.util.Scanner;
     2 
     3 public class Test {
     4     public static void main(String[] args) {
     5         int rows;
     6         Scanner sc = new Scanner(System.in);
     7         System.out.println("Please input odd rows:");// 只能是奇数行
     8         rows = (sc.nextInt() + 1) / 2;// 上半部分行数
     9         sc.close();
    10         sc.close();
    11         for (int i = 1; i <= rows; i++) {
    12             for (int j = 1; j <= rows - i; j++) {
    13                 System.out.print(" ");
    14             }
    15             for (int j = 1; j <= 2 * i - 1; j++) {
    16                 if (i == 1) {
    17                     System.out.print("*");
    18                 } else if (j == 1 || j == 2 * i - 1) {
    19                     System.out.print("*");
    20                 } else {
    21                     System.out.print(" ");
    22                 }
    23             }
    24             System.out.println();
    25         }
    26         for (int i = rows - 1; i >= 1; i--) {// 此处只需i=rows-1即可
    27             for (int j = 1; j <= rows - i; j++) {
    28                 System.out.print(" ");
    29             }
    30             for (int j = 1; j <= 2 * i - 1; j++) {
    31                 if (i == 1) {
    32                     System.out.print("*");
    33                 } else if (j == 1 || j == 2 * i - 1) {
    34                     System.out.print("*");
    35                 } else {
    36                     System.out.print(" ");
    37                 }
    38             }
    39             System.out.println();
    40         }
    41     }
    42 }
    View Code
  • 相关阅读:
    最近有人说我欺骗消费者,今天来一波视频分享
    前端 Java Python等资源合集大放送
    dubbo源码学习(四):暴露服务的过程
    dubbo源码学习(二) : spring 自定义标签
    Dubbo多注册中心和Zookeeper服务的迁移
    线程各种状态转换分析
    java并发之同步辅助类CountDownLatch
    工作5年的Java程序员,才学会阅读源码,可悲吗?
    【阿里面试系列】Java线程的应用及挑战
    「阿里面试系列」搞懂并发编程,轻松应对80%的面试场景
  • 原文地址:https://www.cnblogs.com/linkchen/p/10453366.html
Copyright © 2011-2022 走看看