go语言的基础语法
循环只有for 没有while等等
package main
import (
"fmt"
"io/ioutil"
"strconv"
)
func readFile() {
// if的使用
const filename = "go.txt"
contents, error := ioutil.ReadFile(filename)
if(error !=nil){
fmt.Println(error)
}else{
fmt.Printf("%s\n", contents)
}
// 第二种写法
if text, err := ioutil.ReadFile(filename);err !=nil{
fmt.Println(err)
}else{
fmt.Printf("%s\n", text)
}
}
//for 的使用
func loop() int{
g :=0
for i :=1;i<100;i++{
g += i
}
return g
}
func convertToBin(n int) string {
result := ""
for ; n>0; n /= 2 {
lsb :=n % 2
result = strconv.Itoa(lsb) + result
}
return result
}
// switch的使用
func grade(score int) string {
result := ""
switch {
case score < 0 || score > 100:
panic("score is error!")
case score < 60:
result = "D"
case score < 70:
result = "C"
case score < 80:
result = "B"
case score < 90:
result = "A"
case score <= 100:
result = "S"
default:
panic("this score is error!")
}
return result
}
// 两个返回值
func div(a,b int)(q,r int){
return a / b, a % b
}
func main() {
readFile()
fmt.Println(
convertToBin(100),
convertToBin(1024),
grade(34),
grade(88),
loop(),
)
q,r := div(23,2)
fmt.Print(q,r)
}