Go语言基础--嵌套循环(多重循环)

嵌套循环可以让你在一个循环内部再嵌套另一个或多个循环。这种结构在处理多维数据(如二维数组、矩阵)或需要遍历多个集合时非常有用。

for 初始化语句1; 条件判断1; 更新语句1 {

// 外层循环体

for 初始化语句2; 条件判断2; 更新语句2 {

// 内层循环体

// 执行一些操作

}

// 内层循环结束后执行的代码(可选)

}

// 外层循环结束后执行的代码(可选)

案例

统计三个公司的安全成绩情况,每个公司有4名员工,算出每个公司的平均成绩,以及每个公司的及格人数,80分以上为及格,代码如下: 用了二维数组存放信息

package main

import (

"bufio"

"fmt"

"os"

"strconv"

"strings"

)

func main() {

const companies = 3

const employ = 4

scores := make([][]int, companies)

for i := range scores {

scores[i] = make([]int, employ)

}

reader := bufio.NewReader(os.Stdin)

for company := 0; company < companies; company++ {

fmt.Printf("请输入第%d个公司的员工成绩(共 %d 名员工):\n", company+1, employ)

for employee := 0; employee < employ; employee++ {

fmt.Printf("员工 %d 的成绩: ", employee+1)

input, _ := reader.ReadString('\n')

trimmedInput := strings.TrimSpace(input)

score, err := strconv.Atoi(trimmedInput)

if err != nil {

fmt.Printf("输入错误,无法将字符串 '%s' 转换为整数。错误:%v\n", input[:len(input)-1], err)

return

}

scores[company][employee] = score

}

}

for company := 0; company < companies; company++ {

totalScore := 0

passingCount := 0

for _, score := range scores[company] {

totalScore += score

if score >= 80 {

passingCount++

}

}

avgScore := float64(totalScore) / float64(employ)

fmt.Printf("第 %d 个公司的平均成绩是:%.2f,及格人数是:%d\n", company+1, avgScore, passingCount)

}

}

99乘法表

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", j, i, j*i)

}

fmt.Println()

}

}

相关推荐
SmartRadio14 小时前
在CH585M代码中如何精细化配置PMU(电源管理单元)和RAM保留
linux·c语言·开发语言·人工智能·单片机·嵌入式硬件·lora
踏浪无痕14 小时前
SQLInsight:从JDBC底层到API调用的零侵入SQL监控方案
数据库·后端·开源
智慧地球(AI·Earth)14 小时前
Codex配置问题解析:wire_api格式不匹配导致的“Reconnecting...”循环
开发语言·人工智能·vscode·codex·claude code
Ralph_Y14 小时前
C++虚继承
开发语言·c++
杨章隐14 小时前
Java 解析 CDR 文件并计算图形面积的完整方案(支持 MultipartFile / 网络文件)@杨宁山
java·开发语言
SmartRadio14 小时前
进一步优化CH585M的低功耗模式
c语言·开发语言·单片机·嵌入式硬件·物联网
Renhao-Wan14 小时前
Java 并发基石:AQS (AbstractQueuedSynchronizer)
java·开发语言
SweetCode15 小时前
【无标题】
开发语言·c++·算法
shughui15 小时前
Python基础面试题:语言定位+数据类型+核心操作+算法实战(含代码实例)
开发语言·python·算法
No0d1es15 小时前
2025年12月电子学会青少年软件编程Python六级等级考试真题试卷
开发语言·python·青少年编程·等级考试·电子学会