👻创作者:丶重明
👻创作时间:2025年3月7日
👻擅长领域:运维
目录
- 1.😶🌫️题目:简单的控制台计算器
- 2.😶🌫️代码输出
- 3.😶🌫️结果输出:
- 4.😶🌫️代码解析:
- 5.😶🌫️本章要点:
- 6.😶🌫️内容扩展:
1.😶🌫️题目:简单的控制台计算器
使用Go语言实现一个简单的加、减、乘、除控制台计算器,支持基本的数学运算。
通过这个练习可以学习Go语言的一些基本语法,如switch
逻辑判断,if
逻辑判断等使用。
设计思路比较简单,主要分为以下几个步骤:
- 提示用户输入两个数字
- 提示用户输入运算符
- 根据用户输入进行相应运算
- 得出结果
2.😶🌫️代码输出
接下来,将使用Go语言进行编写代码,实现简单的计算器功能。
package mainimport "fmt"func main() {var num1, num2 float64var operator stringfmt.Println("请输入第一个数字:")fmt.Scanln(&num1)fmt.Println("请输入第二个数字:")fmt.Scanln(&num2)fmt.Println("请输入运算符(+ - * /):")fmt.Scanln(&operator)switch operator {case "+":fmt.Printf("结果为: %.2f\n", num1+num2)case "-":fmt.Printf("结果为: %.2f\n", num1-num2)case "*":fmt.Printf("结果为: %.2f\n", num1*num2)case "/":if num2 == 0 {fmt.Println("出错了~除数不能为0")} else {fmt.Printf("结果为: %.2f\n", num1/num2)}default:fmt.Println("出错了~请输入正确的运算符")}
}
3.😶🌫️结果输出:
保存代码,通过go run
命令执行代码文件,如下所示:
> go run .\7.gotest.go
请输入第一个数字:
5.8
请输入第二个数字:
6.2
请输入运算符(+ - * /):
/
结果为: 0.94
4.😶🌫️代码解析:
- 导入
fmt
包进行输入输出操作。 - 使用
var
声明变量num1
和num2
用于存储数字;声明变量operator
用来存储操作符。 - 使用
fmt.Scanln
从控制台读取用户输入的数字和操作符。 - 使用
switch
语句根据用户输入的操作符执行相应的运算,如果输入的运算符不符合要求则提示错误。 - 在进行除法运算时,加入判断逻辑除数不能为0,如果为0则提示错误。
5.😶🌫️本章要点:
fmt.Scanln
作用是从标准输入读取一行数据,并尝试将其解析为合适的类型,与Scan
的区别是遇到换行符时会停止读取。
switch 表达式 {
case 值1:// 当表达式的值等于值1时执行的代码
case 值2:// 当表达式的值等于值2时执行的代码
// 可以有更多的 case 分支
default:// 当表达式的值与所有 case 的值都不匹配时执行的代码
}
在表达式switch
中,switch
后面的表达式会被求值,然后依次与每个case
后面的值进行比较。
如果匹配成功,则执行该 case 后面的代码块,并且在执行完后会自动跳出switch
语句,不需要使用break
语句(Go 语言的 switch 语句默认自带 break 效果)。
如果所有case
都不匹配,则执行default
分支(default 分支是可选的)。
if 条件表达式 {// 当条件表达式为 true 时执行的代码块
} else {// 当条件表达式为 false 时执行的代码块
}
if
语句可以和else
语句结合使用,当if
条件表达式的值为false
时,会执行else
语句后面的代码块。
6.😶🌫️内容扩展:
这个简单计算器案例有很多扩展的地方,以下是一些可以考虑的扩展方向:
- 支持更多运算 ,如幂运算(^)、平方根(sqrt)
- 实现括号运算,有括号时候先算括号里的
- 支持科学运算,比如三角函数、指数等
同系列:
上一篇:【Go每日一练】构建一个简单的用户信息管理系统