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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 熊鑫 中级黑马   /  2013-4-17 11:31  /  2788 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

如题,我想输出
      *
    ***
  *****
*******
  *****
    ***
      *
三角形的会输出, 这个菱形怎么写代码。

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

4 个回复

倒序浏览
我自己写的  仅供参考

public class Demo11
{
        public static void main(String [] args)
        {
                int H =7,W=7;//高和宽必须是相同的奇数
                for(int i =0;i<(H+1)/2;i++)
                {
                        for(int j =0;j<W/2-i;j++)
                        {
                                System.out.print(" ");
                        }
                        for(int k=1;k<(i+1)*2;k++)
                        {
                            System.out.print("*");
                        }
                        System.out.println();
                }

                for(int i=1;i<=H/2;i++)
                {
                        for(int j=1;j<=i;j++)
                        {
                                System.out.print(" ");
                        }
                        for(int k=1;k<=W-2*i;k++)
                        {
                                System.out.print("*");
                        }
                        System.out.println();
                }

        }
}
回复 使用道具 举报
  1.   static void Main(string[] args)
  2.         {//输出菱形
  3.             for (int i = 1; i < 5; i++)
  4.             {
  5.                 for (int j = 1; j <= 5 - i; j++)
  6.                     Console.Write(" ");
  7.                 for (int k = 1; k <= i * 2 - 1; k++)
  8.                     Console.Write("*");
  9.                 Console.WriteLine("");
  10.             }
  11.             for (int i = 1; i <= 3; i++)
  12.             {
  13.                 for (int j = 0; j <= i; j++)
  14.                     Console.Write(" ");
  15.                 for (int k = 1; k <= 7 - 2 * i; k++)
  16.                     Console.Write("*");
  17.                 Console.WriteLine("");
  18.             }
  19.             Console.ReadKey();
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
本帖最后由 张林杰 于 2013-4-18 11:55 编辑

输入菱形的层数n(即高度),可输出对应的菱形,可能变量太多,不好理解
  1. class Program
  2.     {
  3.         static int i, j, k = 0;
  4.         static int n=7;
  5.         static void Main(string[] args)
  6.         {
  7.             Console.WriteLine("请输入菱形的层数:");
  8.             n = Convert.ToInt32(Console.ReadLine());
  9.             for (i = 0; i < n / 2 + 1; i++)//一次循环绘制一行
  10.             {
  11.                 Draw();
  12.             }
  13.             for (i = (n - 3) / 2; i >= 0; i--)//改变循环条件,绘制下半部分,i = (n - 3) / 2将上半部分与下半部分进行对应
  14.             {
  15.                 Draw();
  16.             }
  17.             Console.ReadKey();
  18.         }

  19.         public static void Draw() //绘制一行
  20.         {
  21.             for (j = 0; j < n / 2 - i; j++)//绘制*前面的空格
  22.             {
  23.                 Console.Write(" ");
  24.             }
  25.             for (k = 0; k < 2 * i + 1; k++)//绘制*
  26.             {
  27.                 Console.Write('*');
  28.             }
  29.             Console.WriteLine();//每绘制一行后进行换行
  30.         }
  31.     }
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
  1. class Test00
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 //正三角形
  6.                 for(int x=0;x<4; x++)
  7.                 {
  8.                         for(int y=x+1; y<4; y++)
  9.                         {
  10.                                 System.out.print(" ");
  11.                         }
  12.                        
  13.                         for(int z=0;z<=x*2; z++)
  14.                         {
  15.                                 System.out.print("*");
  16.                         }
  17.                         System.out.println();
  18.                 }
  19.                 //倒三角形
  20.                 for(int x =1;x<=3; x++)
  21.                 {
  22.                         for(int y=1; y<=x; y++)
  23.                         {
  24.                                 System.out.print(" ");
  25.                         }
  26.                         for(int z=1;z<=7-x*2; z++)
  27.                         {
  28.                                 System.out.print("*");
  29.                         }
  30.                         System.out.println();
  31.                 }
  32.         }
  33. }
复制代码

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

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