输出行数,打印对应行数的菱形

菱形行数都为奇数。

代码分2大部分:1、打印上面的三角(包含中间一行)

                     2、打印下面的三角(不包含中间一行)

其中对于每个部分再分三个步骤:(1)、打印空格(2)打印*(3)打印换行。

注:定义变量行数为 h 

     i 控制第几行

    j 控制每行输出的数量

打印 空格 和 * 都用变量 j 控制,并且用h 和 i 找出关系表示。

以下是代码 :

package work;

 

import java.util.Scanner;

 

//给出行数,输出对应的菱形

public class Zuoye206_1 {

public static void main(String[] args) {

Scanner scan = new Scanner(System.in);

System.out.println("输入菱形的行数(奇数)");

int h = scan.nextInt();

if (h % 2 == 0) {

System.out.println("输入错误");

}else{

//打印上面的三角形(含中间行)

for (int i = 1; i <=(h / 2 + 1); i++) {

//打印空格

for (int j = 1; j <= h/2-i+1; j++) {

System.out.print(" ");

}

//打印*

for (int j = 1; j <= 2*i-1; j++) {

System.out.print("*");

}

//换行

System.out.println();

}

//打印下面的三角形

for (int i = 1; i <= h/2; i++) {

//打印空格

for (int j = 1; j <= i; j++) {

System.out.print(" ");

}

//打印*

for (int j = 1; j <= (h/2 - i) * 2 + 1; j++) {

System.out.print("*");

}

//换行

System.out.println();

}

}

}

}

结果如下

package work;
import java.util.Scanner;
//给出行数,输出对应的菱形public class Zuoye206_1 {public static void main(String[] args) {Scanner scan = new Scanner(System.in);System.out.println("输入菱形的行数(奇数)");int h = scan.nextInt();if (h % 2 == 0) {System.out.println("输入错误");}else{//打印上面的三角形(含中间行)for (int i = 1; i <=(h / 2 + 1); i++) {//打印空格for (int j = 1; j <= h/2-i+1; j++) {System.out.print(" ");}//打印*for (int j = 1; j <= 2*i-1; j++) {System.out.print("*");}//换行System.out.println();}//打印下面的三角形for (int i = 1; i <= h/2; i++) {//打印空格for (int j = 1; j <= i; j++) {System.out.print(" ");}//打印*for (int j = 1; j <= (h/2 - i) * 2 + 1; j++) {System.out.print("*");}//换行System.out.println();}}}}

原文地址:https://www.cnblogs.com/laughing-code/p/6372285.html