【GO】数组练习题

数组元素访问与修改

题目描述

创建一个包含5个整数的数组,修改第3个元素的值,然后输出修改前后的数组。

输出示例

原始数组:[10 20 30 40 50]

修改第3个元素为100

修改后数组:[10 20 100 40 50]

实现代码

Go 复制代码
package main

import "fmt"

func main() {
    arr := [5]int{10, 20, 30, 40, 50}
    
    fmt.Printf("原始数组:%v\n", arr)
    
    // 修改第3个元素(索引2)
    arr[2] = 100
    
    fmt.Println("修改第3个元素为100")
    fmt.Printf("修改后数组:%v\n", arr)
}

数组操作

题目描述

定义数组[5, 8, 3, 9, 2, 7, 4, 6],完成以下操作并输出:

  1. 输出原数组

  2. 输出数组长度

  3. 将第1个元素改为10,第5个元素改为20

  4. 计算修改后数组的首尾元素之和

  5. 输出修改后的数组和计算结果

输出示例

原数组:[5 8 3 9 2 7 4 6]

数组长度:8

修改后数组:[10 8 3 9 20 7 4 6]

首尾元素和:16

实现代码

Go 复制代码
package main

import "fmt"

func main() {
    arr := [8]int{5, 8, 3, 9, 2, 7, 4, 6}
    
    fmt.Printf("原数组:%v\n", arr)
    fmt.Printf("数组长度:%d\n", len(arr))
    
    // 修改元素
    arr[0] = 10
    arr[4] = 20
    
    // 计算首尾元素和
    sum := arr[0] + arr[len(arr)-1]
    
    fmt.Printf("修改后数组:%v\n", arr)
    fmt.Printf("首尾元素和:%d\n", sum)
}

数组与索引计算

题目描述

定义数组[10, 20, 30, 40, 50, 60, 70],使用len()函数计算并输出中间元素的值(第4个元素)。

输出示例

数组:[10 20 30 40 50 60 70]

长度:7

中间元素(第4个):40

实现代码

Go 复制代码
package main

import "fmt"

func main() {
    arr := [7]int{10, 20, 30, 40, 50, 60, 70}
    
    length := len(arr)
    middleIndex := length / 2 // 整数除法,7/2=3
    
    fmt.Printf("数组:%v\n", arr)
    fmt.Printf("长度:%d\n", length)
    fmt.Printf("中间元素(第%d个):%d\n", middleIndex+1, arr[middleIndex])
}
相关推荐
姚不倒2 小时前
Go 进阶实战:实现泛型数据验证器
云原生·golang
XMYX-03 小时前
36 - Go exec 执行命令
开发语言·golang
lolo大魔王3 小时前
Go 语言 HTTP 协议与 RESTful API 实训全解(理论 + 实战 + 规范)
http·golang·restful
一只小逸白3 小时前
LeetCode Go 常用函数速查表
linux·leetcode·golang
LCG元4 小时前
【Go后端开发】从 0 到生产级:高性能分布式网关全实现 + 接口限流熔断降级实战
分布式·golang·wpf
姚不倒14 小时前
Go语言进阶:接口、错误处理与并发编程(goroutine/channel/context)
云原生·golang
宇明一不急1 天前
go 链表 (标准库实现)
开发语言·链表·golang
~|Bernard|1 天前
GO语言中哪些类型是可比较类型的(==和!=)
开发语言·后端·golang
比特森林探险记1 天前
底层数据结构分析 go 语言中的 slice map channel interface
数据结构·golang·哈希算法
XMYX-01 天前
35 - Go 文件操作:读写与临时文件
golang