A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© Johnny_Hu 中级黑马   /  2015-3-6 20:23  /  896 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

  1. package com.itheima;

  2. import java.util.*;
  3. public class Demo1 {
  4.         /*
  5.          * 输出一个空心菱形
  6.          */
  7.        
  8.         static int demo(int num){
  9.                 for(int i=0; i<num; i++){
  10.                         for(int k=num; k>i; k--){
  11.                                 System.out.print(" ");
  12.                         }
  13.                        
  14.                         for(int j=0; j<=i*2; j++){
  15.                                 if(j==0 || j==num)
  16.                                 {
  17.                                         System.out.print("*");
  18.                                 }else{
  19.                                         System.out.print(" ");
  20.                                 }
  21.                                
  22.                         }
  23.                         System.out.println();
  24.                 }
  25.                 for(int i=0; i<num; i++){
  26.                         for(int k=0; k<=i; k++){
  27.                                 System.out.print(" ");
  28.                         }
  29.                        
  30.                         for(int j=0; j<(num-i)*2-1; j++){
  31.                                 if(j==0 || j==num)
  32.                                 {
  33.                                         System.out.print("*");
  34.                                 }else{
  35.                                         System.out.print(" ");
  36.                                 }
  37.                                
  38.                         }
  39.                         System.out.println();
  40.                 }
  41.                 return num;
  42.         }
  43.        
  44.         public static void main(String[] args) {
  45.                 Scanner in = new Scanner(System.in);
  46.                 System.out.print("请输入一个整数:");
  47.                 int num = in.nextInt();
  48.                 demo(num);
  49.         }

  50. }
  51. //前面一个会判断 可是最后输出的*符号 不知道该恒等于几
复制代码

3 个回复

倒序浏览
后面一个“*”不应该就是你内层循环的边界值吗?
  1. package com.itheima;

  2. import java.util.*;
  3. public class Demo1 {
  4.         /*
  5.          * 输出一个空心菱形
  6.          */
  7.       
  8.         static int demo(int num){
  9.                 for(int i=0; i<num; i++){
  10.                         for(int k=num; k>i; k--){
  11.                                 System.out.print(" ");
  12.                         }
  13.                        
  14.                         for(int j=0; j<=i*2; j++){
  15.                                 if(j==0 || j==i*2)
  16.                                 {
  17.                                         System.out.print("*");
  18.                                 }else{
  19.                                         System.out.print(" ");
  20.                                 }
  21.                               
  22.                         }
  23.                         System.out.println();
  24.                 }
  25.                 for(int i=0; i<num; i++){
  26.                         for(int k=0; k<=i; k++){
  27.                                 System.out.print(" ");
  28.                         }
  29.                        
  30.                         for(int j=0; j<=(num-i)*2-2; j++){
  31.                                 if(j==0 || j==(num-i)*2-2)
  32.                                 {
  33.                                         System.out.print("*");
  34.                                 }else{
  35.                                         System.out.print(" ");
  36.                                 }
  37.                               
  38.                         }
  39.                         System.out.println();
  40.                 }
  41.                 return num;
  42.         }
  43.       
  44.         public static void main(String[] args) {
  45.                 Scanner in = new Scanner(System.in);
  46.                 System.out.print("请输入一个整数:");
  47.                 int num = in.nextInt();
  48.                 demo(num);
  49.         }

  50. }
复制代码
回复 使用道具 举报 1 0
谢谢  可以了  
回复 使用道具 举报
shewim 发表于 2015-3-7 14:05
后面一个“*”不应该就是你内层循环的边界值吗?

谢谢  可以了  :P
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马