1 回答
TA贡献1830条经验 获得超3个赞
如果您只需要接受 float 64 值作为输入,您可以简单地使用%f, 或%g来设置您的值。默认精度为 6。
如果您需要更高的精度和错误处理能力,将输入作为字符串输入,然后根据需要解析和处理它们可能会更可靠。
运行下面的代码可以看到输入都是 float64。第一个将以精度 2 输出,第二个将以默认精度输出。
package main
import "fmt"
const menu string = "Calculator v1.0:\n\t1.a+b\n\t2.a-b\n\t3.a*b\n\t4.a/b\nSelect an option:"
func main() {
var option int
var firstNumber float64
var secondNumber float64
fmt.Println(menu)
fmt.Scanf("%d", &option)
fmt.Println("First number:")
fmt.Scanf("%f", &firstNumber)
fmt.Println("Second number:")
fmt.Scanf("%g", &secondNumber)
fmt.Printf("Input Type: %T, FirstNumber: %.2f\n", firstNumber, firstNumber)
fmt.Printf("Input Type 2: %T, SecondNumber: %f\n", secondNumber, secondNumber)
if option == 1 {
println(sum(firstNumber, secondNumber))
} else if option == 2 {
println(subtract(firstNumber, secondNumber))
} else if option == 3 {
println(multiply(firstNumber, secondNumber))
} else if option == 4 {
println(divide(firstNumber, secondNumber))
}
}
func sum(a float64, b float64) float64 {
return a + b
}
func subtract(a float64, b float64) float64 {
return a - b
}
func multiply(a float64, b float64) float64 {
return a * b
}
func divide(a float64, b float64) float64 {
return a / b
}
- 1 回答
- 0 关注
- 106 浏览
添加回答
举报