Go学习笔记(六)
九九乘法表
package main import "fmt" func main() { var total int = 9 for a := 1; a <= total; a++ { for b := 1; b <= a; b++ { fmt.Printf("%v * %v = %v \t", b, a, a*b) } fmt.Println() } }
package main import "fmt" func main() { /// 1、实现判断一个整数,属于哪个范围:大于0 小于0 等于0 ///其实就是一个数来判断 var num int fmt.Scanln(&num) if num > 0 { fmt.Println("大于0") } else if num < 0 { fmt.Println("小于0") } else { fmt.Println("等于0") } fmt.Println() ///此为强制换行,无他意 ///2、判断一个年份是否为闰年 ///闰年的判断标准能被4整除,但不能被100整除;或者可以被400整除 var year int fmt.Println("请输入年份:") fmt.Scanln(&year) if year % 4 == 0 && year % 100 != 0 || year % 400 == 0 { fmt.Printf("%v该年为闰年", year) } else { fmt.Printf("%v该年不为闰年", year) } fmt.Println() ///此为强制换行,无他意 ///3、判断一个整数是否是水仙花数,所谓水仙花数是一个3位数,其各个位上数字立方和等于其本身 ///首先需要定义声明一个整数,且这个数字可以输入,并且要判断它是一个三位数的数字,其实就是在100-999的范围 ///然后其每个位数上的数字立方要等于他的本身,比如这个数是153 = 1*1*1 + 5*5*5 + 3*3*3;其实也就是可以把X拆解为abc的三个位数再用公式套入即可 var x, a, b, c int fmt.Println("请输入三位数数字:") fmt.Scanln(&x) if x >= 100 && x <= 999 { if x == a^3 + b^3 + c^3 { fmt.Printf("%v该数为水仙花数", x) } else { fmt.Printf("%v该数不为水仙花数", x) } } else { fmt.Println("请输入个三位数") } fmt.Println() ///此为强制换行,无他意 /////4、写出输入结果 //m, n := 0, 3 //if m > 0 { //if n > 2 { //fmt.Println("A") //} else { //fmt.Println("B") //} //} ///如果其格式输出都没有问题的话,这题基本上就不输出结果。当然这种题目要注意的是格式 ///5、保存用户名和密码,判断用户名是否为张三,密码是否为1234,如果是,提示登录成功,否则提示登录失败 ///这里先要声明用户名和密码,然后再去做判断用户名,再去判断密码等 var username string = "张三" var password string = "1234" var input_username, inputpassword string fmt.Println("请输入账号") fmt.Scanln(&input_username) fmt.Println("请输入密码") fmt.Scanln(&inputpassword) if input_username == username { if inputpassword == password { fmt.Println("登录成功!") } else { fmt.Println("密码错误,登录失败!") } } else { fmt.Println("请检查你的账号") } fmt.Println() ///此为强制换行,无他意 /// 6、编写程序,根据输入的月份和年份,求出该月的天数(1-12) ///这里其实就是先判断年是否为闰年,然后再去判断对应的月份,可以使用SWITCH语句来做 ///1、3、5、7、8、10、12 都是31天 /// 2月份 闰年29天,非闰年30天 ///其他的都是30天 /// switch 可以当做if else来做,然后就把条件判断放到case内去实现判断即可 var years, month int fmt.Println("请输入年份") fmt.Scanln(&years) fmt.Println("请输入月份") fmt.Scanln(&month) switch { case years % 4 == 0 && years % 100 == 0, years % 400 == 0, month == 2: fmt.Println("该月有29天") case month == 2: fmt.Println("该月有28天") case month == 1 && month == 3 && month == 5 && month == 7 && month == 8 && month == 10 && month == 12: fmt.Println("该月有31天") default: fmt.Println("该月有30天") } fmt.Println() ///此为强制换行,无他意 ////7、开发一款软件,根据公式(身高-108)*2=体重,可以有10斤左右的浮动,来观察测试者体重是否合适,这里有需要注意的就是刻度单位最好标准为斤哦。 ////这里是两个变量的声明,就是身高和体重,然后通过用户输入身高和体重,再利用公式去判断,如果用户的体重在这个范围内,则可以说合适,否则就算超重 ///其实这里可以有几种做法,if else if else或者switch都可以实现 var height, weight float64 fmt.Println("请输入身高") fmt.Scanln(&height) fmt.Println("请输入体重(斤)") fmt.Scanln(&weight) if weight > (height - 108.0) * 2.0 && weight - (height - 108.0) * 2.0 >= 10.0 { fmt.Println("您有点超重哦!") } else if weight < (height - 108.0) * 2.0 && (height - 108.0) * 2.0 - weight >= 10.0 { fmt.Println("您有点偏瘦呢") } else { fmt.Println("恭喜你,体重符合标准") } fmt.Println() ///此为强制换行,无他意 //8、判断此考试成绩为什么等级 //90-100之间为优秀 //80-89之间为优良, //70-79之间为良好 //60-69之间为及格 //60分以下为不及格 //这道题其实更多的可以使用SWITCH去做判断输出,会比if else if 多分支会更加简单和方便 var score int fmt.Println("请输入成绩") fmt.Scanln(&score) switch { case score >= 90 && score <= 100: fmt.Println("优秀") case score >= 80 && score <= 89: fmt.Println("优良") case score >= 70 && score <= 79: fmt.Println("良好") case score >= 60 && score <= 69: fmt.Println("及格") case score < 60: fmt.Println("不及格") default: fmt.Println("输入的分数有误!") } fmt.Println() ///此为强制换行,无他意 //9、有两个数a和b,如果a能被b整除或者a加b大于1000,则输出a,否则输出b //这题同样是很简单的一个if else 就可以完成的。这就不写输入的,直接来定义a和b是多少,然后来实现,当然 //如果要输入控制也是可以的。由于上面已经存在了a和b的变量声明,我们这里用num1和num2去代替 num1, num2 := 100, 50 if num1 % num2 == 0 || num1 + num2 > 1000 { fmt.Println("输出num1:", num1) } else { fmt.Println("输出num2:", num2) } fmt.Println() ///此为强制换行,无他意 //10、实现对三个整数进行排序,输出时按照从小到大的顺序排序 //这里就是定义三个数值,然后去比较大小,然后输出时从小到大输出即可。 // var num3 int = 3 var num4 int = 2 var num5 int = 5 if num3 > num4 { if num4 > num5 { fmt.Printf("%d < %d < %d",num5,num4,num3) } else if num3 > num5 { fmt.Printf("%d < %d < %d",num4,num5,num3) } else { fmt.Printf("%d < %d < %d",num4,num3,num5) } } else { if num5 > num4 { fmt.Printf("%d < %d < %d",num3,num4,num5) } else if num5 > num3{ fmt.Printf("%d < %d < %d",num3,num5,num4) } else { fmt.Printf("%d < %d < %d",num5,num3,num4) } } }