You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

77 lines
2.5 KiB

package main
import (
"fmt"
)
func main() {
fmt.Printf("%d=%d\n", 1+1, 2)
fmt.Printf("%f=%f\n", 0.1+0.1, 0.2)
fmt.Printf("%f=%f\n", 0.1+0.2, 0.3)
fmt.Printf("%f=%f\n", 0.2+0.2, 0.4)
fmt.Printf("科学计数法:%f\n", 1e3)
var name float64 = 1.68
var name2 = 1.2
fmt.Printf("1 > %T, %#v, %f, %g, %v\n", name, name, name, name, name)
fmt.Printf("2 > %T, %#v, %f, %g, %v\n", name2, name2, name2, name2, name2)
name3 := name2 + name
fmt.Printf("+ > %T, %#v, %f, %g, %v\n", name3, name3, name3, name3, name3)
name4 := name2 - name
fmt.Printf("- > %T, %#v, %f, %g, %v\n", name4, name4, name4, name4, name4)
name5 := name2 * name
fmt.Printf("* > %T, %#v, %f, %g, %v\n", name5, name5, name5, name5, name5)
name6 := name2 / name
fmt.Printf("/ > %T, %#v, %f, %g, %v\n", name6, name6, name6, name6, name6)
name = name - 1
fmt.Printf("-1 > %T, %#v, %f, %g, %v\n", name, name, name, name, name)
name = name + 1
fmt.Printf("+1 > %T, %#v, %f, %g, %v\n", name, name, name, name, name)
name++
fmt.Printf("++ > %T, %#v, %f, %g, %v\n", name, name, name, name, name)
name--
fmt.Printf("-- > %T, %#v, %f, %g, %v\n", name, name, name, name, name)
sprintf := fmt.Sprintf("%f", name)
fmt.Printf("%s\n", sprintf)
name9 := 1.99999999999999
sprintf9 := fmt.Sprintf("%f", name9)
fmt.Printf("%s\n", sprintf9)
name9 = 1.9999999
sprintf9 = fmt.Sprintf("%f", name9)
fmt.Printf("%s\n", sprintf9)
name9 = 1.999999
sprintf9 = fmt.Sprintf("%f", name9)
fmt.Printf("%s\n", sprintf9)
fmt.Printf("%d\n", name == 1.680000)
fmt.Printf("%d\n", name == 1.6799999999999997)
/*
%v 按默认格式输出
%+v 在%v的基础上额外输出字段名
%#v 在%+v的基础上额外输出类型名
%% %字面量
%b 一个二进制整数,将一个整数格式转化为二进制的表达方式
%c 一个Unicode的字符
%d 十进制整数
%o 八进制整数
%x 小写的十六进制数值
%X 大写的十六进制数值
%U 一个Unicode表示法表示的整型码值
%s 输出以原生的UTF8字节表示的字符,如果console不支持utf8编码,则会乱码
%t 以true或者false的方式输出布尔值
%v 使用默认格式输出值,或者如果方法存在,则使用类性值的String()方法输出自定义值
%T 输出值的类型
%f 有小数而无指数 fmt.Printf("%f", 10.2) > 10.200000
%g 根据情况选择 %e 或者 %f 以产生更紧凑的(无末尾的0)输出 fmt.Printf("%f", 10.20) > 10.2
%G 根据情况选择 %E 或者 %f 以产生更紧凑的(无末尾的0)输出 fmt.Printf("%f", 10.20+2i) > 10.2+2i
*/
}