开发者学堂课程【Go语言核心编程 - 基础语法、数组、切片、Map:多重循环应用案例】学习笔记,与课程紧密联系,让用户快速学习知识
课程地址:https://developer.aliyun.com/learning/course/625/detail/9579
多重循环应用案例(二)
三、应用实例2
1、案例:
统计三个班级及格人数,每个班有5名同学
2、分析思路:
既然要统计3个班的及格人数,就要定义一个变量去保存及格人数,所以声明一个变量 passCount 用于保存及格人数,再使用if语句去判断是否及格。
代码如下:
var class
N
um int =
2
var stu
N
um int =
5
var total
S
um float64 = 0.0
v
ar pass
C
ount int = 0
//定义变量 passCount,类型为 int,初始化值为0。
f
or j :=1;j<=class
N
um; j++{
//for循环中进行统计人数
sum
:=0.0
f
or i := 1;i<= stu
N
um; i++{
v
ar score float64
f
mt.
P
rintf
(“请输入第%d班 第%d个学生的成绩\n”,j,i)
f
mt.
S
canln(&score)
s
um
+=
score
i
f score>=60{
//判断分数是否及格
p
ass
C
ount ++
}
}
f
mt.
P
rintf
(“第%d个班级的平均分%v\n”,j,sum/float64 ( stuNum))
t
otal
S
um += sum
}
f
mt.
P
rintf
(“各个班级的总成绩%v 所有班级的平均分是
%v\n”,total
S
um,total
S
um/float64 (stu
N
um*class
N
um))
f
mt.
P
rintf
(“及格人数为%v\n”,PassCount)
}
此时运行代码,快速输入第1班5名学生成绩分别为10,10,70,10,10,第2班5名学生成绩分别为1,1,1,1,80。
运行结果:
…
第1个班级的平均分是22
…
第2个班级的平均分是16.8
各个班级的总成绩194 所有班级平均分是19.4
及格人数为2
验证后发现程序输出数值都正确,说明案例2实现成功。