golang中的插入排序

golang中的插入排序,go,Go,依次输出序列的一个元素 package main import( "fmt" ) 0-里金 func trace(A[]int,N int){ for i :=0; i < N; i++{ if i > 0 { fmt.Println(" ") fmt.Println("%d",A[i]) } } fmt.Println("\n") } 上面的代码有错误,下面的代码也有错误 func insert

依次输出序列的一个元素

package main
    import(
      "fmt"
    )
0-里金

func trace(A[]int,N int){
  for i :=0; i < N; i++{
    if i > 0 {
      fmt.Println(" ")
      fmt.Println("%d",A[i])
    }
  }
    fmt.Println("\n")
}
上面的代码有错误,下面的代码也有错误

func insertionSort(A[]int, N int) (int int) {
      for i := 0; i < N; i++{
        v := A[i]
        j := i -  1
        for j >= 0 && A[j] > v{
          A[j + 1] = A[j]
          j--
        }
          A[ j + 1 ] = v
          trace(A,N)
      }
      return int
    }
这都是用C语言编写的,在Main中出现了很多错误

go1.5.2有几件事:

scanf不是您可能需要的函数fmt.scanf 数组不是片[100]int与[]int是不同的类型 无法打印traceA,N,因为它不返回值
   func main() {
      var N,i,j int
      var A[100]int
      scanf("%d",&N)
      for i:= 0;  i < N; i++ {
        scanf("%d",&A[i])
      }
      fmt.Println(trace(A,N))
      fmt.Println(insertionSort(A,N))

      return 0
    }