【go】分支语句与函数定义

本文探讨了Go(golang)编程语言中的两种关键构造:分支语句和函数定义。首先,详细介绍了如何使用分支语句来实现条件执行,如`if`、`else`、`switch`等。接着,讨论了函数的定义方法,包括参数、返回值及函数体的编写,阐述了函数在Go语言中作为模块化和复用代码的重要角色。
摘要由CSDN通过智能技术生成

1. 分支语句

package main

import "fmt"
//switch中可以没有break

func grade(score int) string{
	switch{
	case score<60:
		fmt.Println("F")
	case score<80:
		fmt.Println("c")
	case score<90:
		fmt.Println("B")
	default:
		return "A"
	}
	return "输入错误"
}
//if条件中可以定义~
func ifTest(){
	x:=0
	if n := "abc"; x > 0 {     // 初始化语句未必就是定义变量, 如 println("init") 也是可以的。
		println(n[2])
	} else if x < 0 {    // 注意 else if 和 else 左大括号位置。
		println(n[1])
	} else {
		println(n[0])
	}
}
func main() {
	grade(50)
	grade(70)
	grade(90)
	grade(0)
	ifTest()


}

2.函数定义

package main

import "fmt"

func eval(a,b int,op string) (int,error){
	switch op{
	case "+":
		return a+b,nil
	case "-":
		return a-b,nil
	case "*":
		return a*b,nil
	case "/":
		q,_:=div(a,b)
		return q,nil
	default:
		return 0,fmt.Errorf(
			"unsupported operation:s%",op)
	}
}
func div(a, b int) (int, int) {
	q,r :=a/b,a%b
	return q,r
}


func main() {
	if result, err := eval(3, 4, "x");err != nil{
		fmt.Println("Error:", err)
	} else{
		fmt.Println(result)
	}
	fmt.Println(eval(3,4,"x"))
	fmt.Println(div(12,5))
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值