zoukankan      html  css  js  c++  java
  • Java 动态打印菱形代码之for循环的使用

    1.自定义空心菱形 

     1 void PrintRhombus() {
     2         int i, j;
     3         int s = 4;
     4         for (i = 1; i < 2 * (s + 1); i++) {
     5 
     6             if (i <= s + 1) {
     7                 for (j = 1; j < 2 * (s + 1); j++) {
     8                     if (j == s - i + 2 || j == i + s) {
     9                         System.out.print("*");
    10                     } else {
    11                         System.out.print(" ");
    12                     }
    13                 }
    14 
    15             } else {
    16                 for (j = 1; j < 2 * (s + 1); j++) {
    17                     if (j == 3 * s + 2 - i || j == i - s) {
    18                         System.out.print("*");
    19                     } else {
    20                         System.out.print(" ");
    21                     }
    22                 }
    23 
    24             }
    25             System.out.println();
    26         }
    27         System.out.println();
    28 
    29     }
    View Code
    1.自定义实心菱形 
      
     1     void PrintRhombus() {
     2         int i, j;
     3         int s=4;
     4         for (i = 1; i <2*(s+1); i++) {
     5             
     6             if(i<=s+1) {
     7                 for (j =1; j <2*(s+1); j++) {
     8                     if (j >= s-i+2  && j <= i + s) {
     9                         System.out.print("*");
    10                     } else {
    11                         System.out.print(" ");
    12                     }
    13                 }
    14                 
    15             }else {
    16                 for (j =1; j <2*(s+1); j++) {
    17                     if (j <= 3*s+2-i  && j >= i-s) {
    18                         System.out.print("*");
    19                     } else {
    20                         System.out.print(" ");
    21                     }
    22                 }
    23                 
    24             }
    25 
    26             System.out.println();
    27 
    28         }
    29         
    30         System.out.println();            
    31         
    32     }
    学习链接:http://www.runoob.com/java/java-loop.html //http://www.runoob.com/java/java-if-else-switch.html
     
    /*for循环嵌套实例:
    如何利用for循环打印一个菱形?
    
    */
    public class Test {
        public static void main(String[] args) {
            //定义变量
            int i,j,q;
            //打印菱形的上半部分,左边打印倒直角三角形的空格,右边打印等腰三角形
            for( i = 1;i < 6; i ++) //外循环控制行数,共打印五行
            {
                //左边打印倒直角三角形空格
                for( j = 5; j > i; j--) //与外循环关联,初始值不变,表达式变化,控制打印的列数
                {
                    System.out.print(" ");
                }
                //右边等腰三角形
                for( q = 1;q < i*2; q++) //与外循环关联,初始值不变,表达式变化,打印奇数列1,3,5,7,9
                {
                    System.out.print("*");
                }
                System.out.println();    //换行
            }
            //打印菱形的下半部分,左边为直角三角形的空格,右边为倒的等腰三角形
            for(i = 1; i < 5; i++) //外循环控制行数,共打印四行
            {
                //左边直角三角形空格
                for(j = 1;j <= i; j++) {    //与外循环关联,初始值不变,表达式变化,共打印五行
                    System.out.print(" ");
                }
                //右边倒直角三角形
                for( q = i*2; q < 9 ; q++) {    //与外循环关联,初始值变化,表达式不变,打印奇数列7,5,3,1
                    System.out.print("*");
                }
                System.out.println();    //换行
            }
        }
    }
    
    /*
    思路:
    菱形为上下两个等腰三角形(用两个外层for循环分别代表上下两部分)
    上部分为倒直角三角形 + 等腰三角形。外层for以要嵌套两个for循环分别打印出倒直角三角形(直角三角形打印空格)和等腰三角形
    下部分为直角三角形和倒等腰三角形。外层for同样要嵌套两个for循环打印直角三角形(直角三角形打印空格)和倒的等腰三角形
    
    */
    

      

     
      
  • 相关阅读:
    Best Time to Buy and Sell Stock
    Remove Nth Node From End of List
    Unique Paths
    Swap Nodes in Pairs
    Convert Sorted Array to Binary Search Tree
    Populating Next Right Pointers in Each Node
    Maximum Subarray
    Climbing Stairs
    Unique Binary Search Trees
    Remove Duplicates from Sorted Array
  • 原文地址:https://www.cnblogs.com/Spring-Rain/p/9539150.html
Copyright © 2011-2022 走看看