文章目录
前言
本文为牛客的在线编程的GO语言入门题集的个人解析
本人主语言C/C++ 来这边刷一下GO的入门语法题,这个题库很基础很入门真的就是纯考GO语法
本文虽然是展示AC代码,但实际是为了记录GO的各种基础语法,便于以后遗忘了可以查看
牛客的环境是版本:Go 1.14
Go的学习资料链接
相关资料链接:
《Go 入门指南》 | Go 技术论坛 (learnku.com)
Go by Example 中文版 (gobyexample-cn.github.io)
AC代码
01 输出打印
GP1 go的第一个程序
package main
import (
"fmt"
)
func main() {
fmt.Println("Hello World!")
}
02 变量
GP2 小明信息
package main
import (
"fmt"
)
type Person struct {
name string
age int
sex bool
}
func main() {
man := Person{
"小明", 23, true}
fmt.Printf("%s\n%d\n%v\n", man.name, man.age, man.sex)
}
GP3 个人信息
package main
import "fmt"
func main() {
num, b := 0, false
fmt.Printf("\n%d\n%v\n", num, b)
}
03 常量
GP4 国家名称
package main
import "fmt"
func main() {
const (
China = "中国"
English = "英国"
America = "美国"
)
fmt.Println(China)
fmt.Println(English)
fmt.Println(America)
}
04 指针
go 里的指针,有时用起来更像引用
GP5 值和指针
package main
func equal( a int , b int ) []bool {
return []bool{
&a == &b, a == b}
}
05 字符串
GP6 拼接字符串
package main
// import "fmt"
func join( s []string ) string {
var str string
// _ 占位符,不会报错
for _, ss := range s {
str += ss
}
return str
}
GP7 字符数量
package main
// import "fmt"
func count( s string ) int {
runes := []rune(s)
return len(runes)
}
GP8 回文数
package main
import "strconv"
func isPalindrome( x int ) bool {
str := strconv.Itoa(x)
i, j := 0, len(str) - 1
for ; i < j && str[i] == str[j]; i, j = i + 1, j - 1 {
}
return i >= j
}
06 类型转换
GP9 格式化字符串
知识点:
Go 使用 import 关键字来导入包
Go 可以使用 fmt.Sprintf 来格式化字符串,fmt.Sprintf(格式化样式, 参数列表…),格式化样式如下:
%v 按值的本来值输出
%+v 在 %v 基础上,对结构体字段名和值进行展开
%#v 输出 Go 语言语法格式的值
%T 输出 Go 语言语法格式的类型和值
%% 输出 % 本体
%b 整型以二进制方式显示
%o 整型以八进制方式显示
%d 整型以十进制方式显示
%x 整型以十六进制方式显示
%X 整型以十六进制、字母大写方式显示
%U Unicode 字符
%f 浮点数
%p 指针,十六进制方式显示
package main
import "strconv"
func formatstr( num int ) string {
return strconv.Itoa(num)
}
GP10 字符求和
知识点:
golang strconv.ParseInt 是将字符串转换为数字的函数,参数1 数字的字符串形式,参数2 数字字符串的进制 比如二进制 八进制 十进制 十六进制,参数3 返回结果的bit大小 也就是int8 int16 int32 int64
package main
import "strconv"
func sum( a string , b string ) string {
anum, _ := strconv.Atoi(a)
bnum, _ :=strconv.Atoi(b)
return strconv.Itoa(anum + bnum)
}
07 运算符
GP11 长方形的周长
package main
// import "fmt"
func perimeter( a int , b int ) int {
return 2 * (a + b)
}
GP12 温度转换
package main
// import "fmt"
func temperature( f float64 ) float64 {
return (f - 32.0) / 1.8
}
GP13 工程时间
package main
import (
"fmt"
)
func main() {
const Day = 97
fmt.Println(Day / 7)
fmt.Println(Day % 7)
}
GP14 器材采购
package main
import "sort"
func compare( x int , y int , z int ) int {
nums := []int{
x, y, z}
sort.Ints(nums)
return nums[len(nums) - 1] - nums[0]
}
GP15 逻辑运算
package main
牛客Go语言入门题集AC代码与语法记录

本文是牛客在线编程GO语言入门题集的个人解析,展示AC代码以记录GO基础语法。包含输出打印、变量、常量、指针等多方面内容,还给出了Go的学习资料链接,适合初学者巩固Go语言基础语法。
最低0.47元/天 解锁文章
9702

被折叠的 条评论
为什么被折叠?



