编程题:空心菱形

简介: 编程题:空心菱形

要求打印一个空心菱形


微信图片_20220105190732.png


代码:


import java.util.Scanner;
public class Demo {
    public static void main(String[] args) {
        Scanner src=new Scanner(System.in);
        System.out.println("你想要输出几行空心菱形?");
        Integer size=src.nextInt();
        if (size % 2==0){
            size++;
        }
        //上半部分
        for (int i = 0; i<size/2+1; i++) {
            for (int j =size/2+1;j>i+1 ; j--) {
                System.out.print(" ");
            }
            for (int j = 0; j <2*i+1; j++) {
                if (j==0||j==i*2)
                {
                    System.out.print("*");
                }else{
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
        //下半部分
        for (int j=size/2+1; j<size; j++) {
            for (int k =0;k<j-size/2; k++) {
                System.out.print(" ");
            }
            for (int i = 0; i <size*2-j*2-1; i++) {
                if(i==0||i==2*(size-j-1)){
                    System.out.print("*");
                }else{
                    System.out.print(" ");
                }
            }
            System.out.println();
        }
    }
}
目录
相关文章
|
6月前
虚继承解决菱形继承的原理
虚继承解决菱形继承的原理
《菱形》 代码分享
《菱形》 代码分享
40 0
|
4月前
|
编译器 C++ 开发者
C++一分钟之-多重继承与菱形问题
【7月更文挑战第19天】C++的多重继承允许类从多个基类派生,但引入了菱形问题,即类D通过B和C(都继承自A)双重继承A,可能导致数据冗余和二义性。解决这个问题的关键是**虚继承**,通过`virtual`关键字确保基类A只被继承一次,消除冲突。理解并适当使用虚继承是处理这类问题的关键,有助于保持代码的清晰和正确性。
57 0
|
6月前
|
程序员 编译器 C++
【继承】菱形继承以及虚拟菱形继承
【继承】菱形继承以及虚拟菱形继承
wustojc5006菱形图案
wustojc5006菱形图案
37 0
|
6月前
|
C++
【C++】:菱形继承和虚拟继承
【C++】:菱形继承和虚拟继承
77 0
|
存储 Cloud Native Linux
C++ 怎么解决菱形继承
C++ 怎么解决菱形继承
复杂的菱形继承及菱形虚拟继承(详解)
复杂的菱形继承及菱形虚拟继承(详解)
61 0
|
编译器 C++
菱形继承和C++相关问题
菱形继承和C++相关问题
|
算法 Java
java 金字塔 空心金字塔 空心菱形 详解(通俗易懂)
分享以下用java如何打印出金字塔,空心金字塔和空心菱形,适合初学者思维锻炼,思路分析是重点。
277 0
java 金字塔 空心金字塔 空心菱形 详解(通俗易懂)