我的Go学习历程

package main

import (
 "fmt"
 // "strings"
)

var x string

func main() {
 A := "0.4"
 B := "77"
 C := "-990033.123456"
 Tranlate(A)
 Tranlate(B)
 Tranlate(C)
}

func Tranlate(A string) {
 var (
  x   string
  w   []string
  Val string
 )

 a := []byte(A)

 for i, _ := range a {
  x = string(a[i])
  w = append(w, x) //把数值转换成string类型的一维数组w
 }
 if w[0] == "-" {
  Val = "负" //负数
  w = w[1:]
  Tran(Val, w)
 } else {
  Tran(Val, w)
 }
}

func Tran(Val string, w []string) {
 var w1 []string
 var w2 []string
 k := 1
 for i, _ := range w {
  if w[i] == "." {
   w1 = w[:i]
   w2 = w[i+1:]
   k = 0
   Pri(w1, w2)
   break
  }
 }
 if k == 1 {
  w2 = append(w2, "no")
  Pri(w, w2)
 }
}

func Pri(w1, w2 []string) {
 for _, j := range w1 {
  fmt.Printf(translationDict[j])
 }
 fmt.Printf("点")
 if w2[0] == "no" {
  fmt.Printf("零")
 } else {
  for _, j := range w2 {
   fmt.Printf(translationDict[j])
  }
 }
 fmt.Println()
}

var translationDict = map[string]string{
 "0": "零",
 "1": "壹",
 "2": "贰",
 "3": "叁",
 "4": "肆",
 "5": "伍",
 "6": "陆",
 "7": "柒",
 "8": "捌",
 "9": "玖",
}

你可能感兴趣的:(Go学习)