设为首页 加入收藏

TOP

Go基础(3)(二)
2019-03-27 20:09:06 】 浏览:297
Tags:基础
0) + '0' result = fmt.Sprintf("%c%s", c3, result) index1-- index2-- } for index1 >= 0 { c1 := a[index1] - '0' sum := int(c1) + left if sum >= 10 { left = 1 } else { left = 0 } c3 := (sum % 10) + '0' result = fmt.Sprintf("%c%s", c3, result) index1-- } for index2 >= 0 { c2 := b[index2] - '0' sum := int(c2) + left if sum >= 10 { left = 1 } else { left = 0 } c3 := (sum % 10) + '0' result = fmt.Sprintf("%c%s", c3, result) index2-- } if left == 1 { result = fmt.Sprintf("1%s", result) } return }

分析:

1.Go实现大数相加,面试常见问题

2.实现思想:人的思维,从个位依此加到最高位

 

demo6:

package main

import "fmt"

func test() int {
    defer func() {
        if err := recover(); err != nil {
            fmt.Println(err)
        }
    }()
    b := 0
    a := 100 / b
    return a
}

func main() {
    test()
}

分析:

1.Go没有try,catch语句,应该用这里的方式

 

demo7:

package main

import "fmt"

func test() {
    i := new(int)
    fmt.Println(i)  //0xc000012088
    fmt.Println(*i) //0

    s1 := new([]int)
    *s1 = make([]int, 5)
    fmt.Println(s1) //&[0 0 0 0 0]

    s2 := make([]int, 5)
    fmt.Println(s2) //[0 0 0 0 0]

    (*s1)[0] = 100
    s2[0] = 100
    fmt.Println(s1) //&[100 0 0 0 0]
    fmt.Println(s2) //&[100 0 0 0 0]
}

func main() {
    test()
}

分析:

1.make和new的区别练习

 

首页 上一页 1 2 下一页 尾页 2/2/2
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇golang 使用匿名结构体的问题 下一篇从0开始学golang--1.1--连接ms sq..

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目