Java输入一个数 n ( n <10),按照下面格式打印输出菱形数字阵列

3.输入一个数 n ( n <10),按照下面格式打印输出菱形数字阵输出如下

img

可以通过嵌套循环以及条件判断来实现按照指定格式打印输出菱形数字阵列。下面是一个示例代码,假设输入的数为 n=5:

public class DiamondPattern {
    public static void main(String[] args) {
        int n = 5; // 用户输入的数

        for (int i = 1; i <= n; i++) { // 上半部分
            for (int j = 1; j <= n - i; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print(i);
            }
            System.out.println();
        }

        for (int i = n - 1; i > 0; i--) { // 下半部分
            for (int j = 1; j <= n - i; j++) {
                System.out.print(" ");
            }
            for (int k = 1; k <= 2 * i - 1; k++) {
                System.out.print(i);
            }
            System.out.println();
        }
    }
}
  • 你可以参考下这个问题的回答, 看看是否对你有帮助, 链接: https://ask.csdn.net/questions/7638165
  • 这篇博客也不错, 你可以看下Java-输入一整数n(n>=1),然后将随后输入的n个整数存入一整型数组;
  • 除此之外, 这篇博客: 书籍排序编 写程序中的 从键盘输入 n (n<10)本书的名称和定价并存入结构数组中,按单价从小到大排序并输出排序后的书籍信息。 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 输入输出示例:括号内为说明,无需输入输出
    输入样例:
    3 (n=3)
    Programming in C
    21.5
    Programming in VB
    18.5
    Programming in Delphi
    20

    输出样例:`
    Programming in VB 18.5
    Programming in Delphi 20.0
    Programming in C 21.5

    答案:

    #include <stdio.h>
    struct book {
        char name[50];
        float  price;
    }books[10],temp;  //temp作为一个临时结构变量
    int main() {
        int n, i, p;
        scanf("%d", &n);
        getchar();
        for (i = 0; i < n; i++) {
            gets(books[i].name);
            scanf("%f", &books[i].price);
            getchar();
        }//赋值给结构变量
    
        for (int i = 0; i < n - 1; i++)
        {
            p = i;
            for (int j = i; j < n; j++)
                if (books[p].price > books[j].price)
                    p = j;
            temp = books[p];
            books[p] = books[i];
            books[i] = temp;
        }//选择法排序
        for (i = 0; i < n; i++) {
            printf("%s %.1f", books[i].name, books[i].price);
            printf("\n");
        }
        return 0;
    }
    

n是啥行 吗