多重循环
-
介绍:将一个循环放在循环内部,就形成了嵌套循环;实际上,嵌套循环就是把内层循环当成外城循环的循环体,当只有内层循环的循环条件为false时,才会完全跳出内层循环,才可结束外层的当次循环,开始下一次的循环
-
问题一:
-
统计3个班级成绩情况,每个班级有5名学生,求各个班级的平均分和所有班级的平均分
-
求所有班级成绩及格的人员
-
代码实现
package main import "fmt" func main() { var banji int = 2 //定义班级变量 var student int = 5 //定义每个班级的学生变量 var tota float64 = 0.0 //定义一个变量用于接收平均值 // 声明一个变量用于接收成绩及格人数 var passCount int = 0 for j := 1; j <= banji; j++ { sum := 0.0 for i := 1; i <= student; i++ { var score float64 fmt.Printf("请输入第%d班,第%d个学生的成绩 \n", j, i) fmt.Scanln(&score) sum += score //累计总分 // 此处做判断是否有及格人数 if score >= 60 { passCount++ } } fmt.Printf("第%d个班级的平均分是%v\n", j, sum/float64(student)) tota += sum //将各个班级的总成绩累计到tota } fmt.Printf("所有班级的总成绩%v 所有班级平均分数是%v\n", tota, tota/float64(student)) fmt.Printf("及格人数有%v/n", passCount) }
-
-
打印出空心金字塔
-
代码
-
package main import "fmt" func main() { var total int = 20 for i := 1; i <= total; i++ { for k := 1; k <= total-i; k++ { fmt.Print(" ") } for j := 1; j <= 2*i-1; j++ { if j == 1 || j == 2*i-1 || i == total { fmt.Print("*") } else { fmt.Print(" ") } } fmt.Println() } }
-
-
打印出九九乘法表
package main import "fmt" func main() { var num int = 9 for i := 1; i <= num; i++ { for j := 1; j <= i; j++ { fmt.Printf("%v * %v = %v\t", i, j, i*j) } fmt.Println() } }