java输出用字母顺序输出的八行菱形java输出用字母顺序输出的八行菱形java输出用字母顺序输出的八行菱形
1条回答 默认 最新
- CSDN专家-微编程 2021-10-18 14:58关注
代码如下
import java.util.Scanner; public class Test { public static void main(String[] args) { char a=65; Scanner scan = new Scanner(System.in); System.out.println("请输入想要生成菱形的行数"); int number = scan.nextInt(); if(number == 0) { System.out.println("输入的值是0,无法输出图形"); }else if (number > 9) { System.out.println("超出26个字母的长度,请输入小于10行的行数"); } else if(number % 2 == 0 && number != 0) { // 上半部分 for(int i = 1 ;i <= (number/2) ;i++) { for(int j = 1 ; j <= (number/2)-i ;j++) { System.out.print(" "); } for(int k = 1; k <= i ;k++) { System.out.print(a+" "); a++; } System.out.println(); } //下半部分 for(int i = 1 ;i <= (number/2) ; i++) { for(int j = 1 ;j <= i-1 ;j++) { System.out.print(" "); } for(int k = 0; k <= (number/2)-i;k++) { System.out.print(a+" "); a++; } System.out.println(); } }else { //上半部分 for(int i = 1; i <= (number/2)+1; i++) { for(int j = 0;j <= (number/2)-i ; j++) { System.out.print(" "); } for(int k = 1; k <= i ;k++) { System.out.print(a+" "); a++; } System.out.println(); } //下半部分 for(int i = 1 ;i <= (number/2);i++) { for(int k = 1;k <= i ;k++) { System.out.print(" "); } for(int j = 0; j <= (number/2)-i ; j++) { System.out.print(a+" "); a++; } System.out.println(); } } } }
测试结果如下
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 2无用