none
这个嵌套循环该怎么写? RRS feed

  • 问题

  • 在控制台应用程序里面用For...Next嵌套循环,用Console.Write()方法在控制台界面打印如下这个图案.代码该怎么写,谢谢! (我是新手,这种问题提出来我真有点不好意思!)

         


     

    2008年11月14日 18:00

答案

  • Code Snippet

     

    Dim i As Integer
            Const N = 10
            For i = 1 To N
                Console.WriteLine("{0," & N & "}", New String("*", i))
            Next
            Console.ReadLine()

     

     

     

    2008年11月15日 2:15
    版主

全部回复

  • 你好!
       for(int i=0;i<10;i++)
       {
           for(int x=0;x<9-i;x++)
               Console.Write(" ");
           for(int y=0;y<i+1;y++)
           {
               Console.Write("*");
               if(y==i)
                  Console.Write("\n");
            }
        }

    2008年11月15日 1:21
    版主
  • Code Snippet

     

    Dim i As Integer
            Const N = 10
            For i = 1 To N
                Console.WriteLine("{0," & N & "}", New String("*", i))
            Next
            Console.ReadLine()

     

     

     

    2008年11月15日 2:15
    版主
  •  

    可以不用嵌套循序的

     

    using System;
    class a
    {
      static void Main()
      {
       string s = "         ";
      for(int i = 1;i<=s.Length;i++)
      {
       Console.WriteLine(s.Substring(1,s.Length-i) + "".PadRight(i,'*'));
      }
      Console.WriteLine("按任意键继续……");
      Console.Read();
     }
    }

    2008年11月15日 2:19
    版主
  • 看见这么多的大括号就晕,本人是新手啊,不会C语言,看C语言代码就像看天书,请大侠们用VB写一下这个循环吧,谢谢!

     

    2008年11月15日 11:20
  • Imports System
    Module a
        Sub Main()
            Dim s As String = "         "
            For i As Integer = 1 To s.Length
                Console.WriteLine(s.Substring(1, s.Length - i) + "".PadRight(i, "*"c))
            Next
            Console.WriteLine("按任意键继续……")
            Console.Read()
        End Sub
    End Module

     

    C#直接转 VB.NEt

    http://www.developerfusion.com/tools/convert/csharp-to-vb/

    2008年11月15日 11:30
    版主
  • 孟宪会的写法很高级,不过这个题的初衷就是让人用循环嵌套,如果只是为了解出这个题的话,一个循环也不用也可以的.我还是想知道用For....Next循环嵌套该怎么写?谢谢!(只能用Console.Write()方法绘制"*")

     

    2008年11月15日 16:59
  • 上面的方法是C#的,不是C代码,C#和 VB.NET是可以直接相互转换的,在.NET时代,已经不存在语言的问题了,使用的类库都是一个。

    上面已经提供了C#与VB.NET相互转换的地址了

     

    2008年11月16日 6:13
    版主
  • 我那不就是VB的,有问题吗?

    2008年11月16日 6:21
    版主
  • 我要的是用多层For....Next循环并且只能用Console.Write()方法,你用的是Console.WriteLine()方法.
    2008年11月16日 11:24
  • Dim i As Integer
            For i = 0 To 9
                Dim x As integer
                      For x=0 To (8-i)
                           Console.Write(" ")
                      Next
                Dim y As integer
                     For y=0 To i
                           Console.Write("*")
                            If y=i Then
                            Console.Write("\n")
                     Next
            Next
    2008年11月16日 14:26
    版主
  • 用的着哪么多循环?就下面几句就OK了

      Dim s As String
            For i As Integer = 1 To 10
                s = s + Space(10 - i) + StrDup(i, "*") + Chr(13) + Chr(10)
            Next
    2008年11月16日 15:45