多组输入,一个整数(2~20),表示翻转金字塔边的长度,即“*”的数量,也表示输出行数。
针对每行输入,输出用“*”组成的金字塔,每个“*”后面有一个空格。
5
* * * * * * * * * * * * * * *
6
* * * * * * * * * * * * * * * * * * * * *
import java.util.*; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); while (sc.hasNext()) { int n = sc.nextInt(); String temp = String.join("", Collections.nCopies(n+1, " ")); for (int i = n; i >0; i--) { System.out.println(String.join("", Collections.nCopies(n-i, " "))+ String.join(" ", Collections.nCopies(i, "*"))+" "); } } } }
#include <stdio.h> int main(){ int n = 0; while(~ scanf("%d", &n)){ for(int i = 0; i < n; i++){ for(int k = 0; k < i; k++){ printf(" "); } for(int j = n - i; j > 0; j--){ printf("* "); } printf("\n"); } } return 0; }
#include <stdio.h> int main() { int n; while(scanf("%d",&n)!=EOF){ int i,j; for(i=0;i<n;i++){ for(j=0;j<i;j++){ printf(" "); } for(j=0;j<n-i;j++){ printf("* "); } printf("\n"); } } }
#include<stdio.h> int main() { int n=0; int i=0; int j=0; int k=0; while(scanf("%d",&n)!=EOF) { for(i=0;i<n;i++) { for(k=0;k<i;k++) { printf(" "); } for(j=i;j<n;j++) { printf("* "); } printf("\n"); } } return 0; }
#include <stdio.h> int main() { int n,i,j; while(scanf("%d",&n)!=EOF) { for(i=1;i<=n;i++) { for(j=1;j<i;j++) { printf(" "); } for(j=1;j<=n-i+1;j++) { printf("* "); } printf("\n"); } } return 0; }
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner in = new Scanner(System.in); while (in.hasNextInt()) { int n = in.nextInt(); //分成两个循环:空格循环增大,星星循环减小 for (int i = 0; i < n; i++) { for (int j = 1; j <= i; j++) { System.out.print(" "); } //空格循环 for (int j = n - 1 - i; j >= 0; j--) { System.out.print("* "); } //星星循环 System.out.println(); } } } }