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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 杨洋 初级黑马   /  2012-7-31 08:56  /  2375 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 杨洋 于 2012-7-31 11:37 编辑

class  Heart {
public static void main(String[] args)
{
  for(int x=0;x<4;x++)
  {
   for(int z=4;z>x;z--)
   {
    System.out.print("  ");
   }
   System.out.print("*");
   for(int z=0;z<x;z++)
   {
    System.out.print("  ");
   }

   for(int z=0;z<x;z++)
   {
    System.out.print("  ");
   }
   System.out.print(" *");

   
   for(int z=3;z>x;z--)
   {
    System.out.print("  ");
   }
   for(int z=3;z>x;z--)
   {
    System.out.print("  ");
   }
   System.out.print("*");
   for(int z=0;z<x;z++)
   {
    System.out.print("  ");
   }

   for(int z=0;z<x;z++)
   {
    System.out.print("  ");
   }
   System.out.print(" *");

   System.out.println("");
  }
   for(int x=1;x<=33;x++)
   {
    if(x==1||x==33)
     System.out.print("*");
    System.out.print(" ");
   }
   System.out.println("");

  for(int x=0;x<9;x++)
  {
   for(int y=0;y<x;y++)
   {
    System.out.print("  ");
   }
   System.out.print("*");
   for(int z=8;z>x;z--)
   {
    System.out.print("  ");
   }
   for(int z=8;z>x;z--)
   {
    System.out.print("  ");
   }
   System.out.print("*");
   
  System.out.println();
  }
  
}
}                                                   
  运行结果:   

5 个回复

倒序浏览
  1. public class HeartDemo {

  2.         public static void main(String[] args)
  3.         {
  4.                
  5.         for(int i=0;i<5;i++){
  6.                 for(int j=0;j<5;j++)
  7.                 {
  8.                         if(j==4-i)
  9.                                 System.out.print("* ");       
  10.                         else
  11.                         System.out.print("  ");
  12.                 }
  13.        
  14.                
  15.                 for(int k=0;k<5;k++){
  16.                         if(k==4)
  17.                                 continue;
  18.                
  19.                         if(k==i)
  20.                                 System.out.print("* ");
  21.                         else
  22.                         System.out.print("  ");
  23.                        
  24.                 }
  25.                
  26.                 for(int j=0;j<5;j++)
  27.                 {
  28.                         if(j==0)
  29.                                 continue;
  30.                        
  31.                         if(j==4-i)
  32.                                 System.out.print("* ");       
  33.                         else
  34.                         System.out.print("  ");
  35.                        
  36.                 }
  37.                
  38.                 for(int k=0;k<5;k++){
  39.                        
  40.                         if(k==i)
  41.                                 System.out.print("* ");
  42.                         else
  43.                         System.out.print("  ");
  44.                 }
  45.                 System.out.println();
  46.         }
  47.        
  48.         for(int i=0;i<9;i++){
  49.                 for(int k=0;k<9;k++){
  50.                         if(k==i)
  51.                                 System.out.print("* ");
  52.                         else
  53.                         System.out.print("  ");
  54.                 }
  55.                 for(int j=0;j<9;j++)
  56.                 {
  57.                         if(j==8-i)
  58.                                 System.out.print("* ");       
  59.                         else
  60.                         System.out.print("  ");
  61.                 }
  62.                 System.out.println();
  63.        
  64.         }
  65.         }
  66.        
  67.        
  68. }
复制代码
不会优化,效果也不大一样,我的能力只能这样了
回复 使用道具 举报
周坤 发表于 2012-7-31 11:19
不会优化,效果也不大一样,我的能力只能这样了

加油哦!挺好的呢
回复 使用道具 举报
哥们的代码读起来头大,不能把他们全部放在一个函数里面,我根据功能写了一些代码:
  1. class Heart
  2. {
  3.         public static void main(String []args)
  4.         {
  5.                 writeUp(5);
  6.                 writeDown(10);
  7.         }

  8.         public static void writeDown(int len)
  9.         {
  10.                 for(int i=0;i<=len;i++)
  11.                 {
  12.                         printnull(i);
  13.                         System.out.print("*");
  14.                         printnull(2*(len-i));
  15.                         System.out.println("*");
  16.                 }
  17.         }
  18.     public static void writeUp(int len)
  19.         {
  20.                 for(int i=len;i>=0;i--)
  21.                 {
  22.                         printnull(i);
  23.                         System.out.print("*");
  24.                         printnull(2*(len-i));
  25.                         if(i!=0)
  26.                         {
  27.                                 System.out.print(" *");
  28.                                 printnull(i*2-2);
  29.                                 System.out.print("* ");
  30.                         }
  31.                         printnull(2*(len-i));
  32.                         System.out.println("*");
  33.                 }
  34.         }
  35.         public static void printnull(int n)
  36.         {
  37.                 for(int j=0;j<n;j++)
  38.                         {
  39.                                 System.out.print("  ");
  40.                         }
  41.         }
  42. }
复制代码




回复 使用道具 举报
可以对这些代码做个解释吗?多加些注释,或是把实现的思路写出来
回复 使用道具 举报
尤其是for循环的思路
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马