全部学科
Python全栈
python
NodeJS全栈
nodejs
📝 1 篇文章 19 道配套习题

GO流程控制专题

专题说明

本专题系统讲解Go语言的流程控制语句,帮助初学者掌握if条件判断、for循环、range遍历、switch分支选择以及break/continue跳转控制的使用方法。

学习目标

  1. 掌握if语句的语法规则与初始化语句
  2. 理解Go只有for循环的设计理念
  3. 学会for range遍历各种数据类型
  4. 掌握switch语句的自动break与fallthrough
  5. 理解break、continue、goto的跳转控制

学习内容

  • if条件语句:语法规则、初始化语句、作用域
  • for循环语句:标准形式、while形式、无限循环
  • range遍历:数组、切片、map、字符串、channel
  • switch分支:自动break、fallthrough、无表达式switch
  • 跳转控制:break、continue、goto、标签

学习建议

  1. 重点理解Go只有for循环的简洁设计
  2. 注意if和switch语句的大括号规则(必须有、同行)
  3. 理解range遍历map时顺序随机的特点
  4. 掌握switch自动break机制,避免误用fallthrough
  5. 实践中合理使用标签简化嵌套循环跳出

📝 配套习题(19 题)

💡 参考答案在文末
判断题
1

Go的switch语句可以不带表达式,此时每个case写条件表达式,相当于if-else链的替代。

A

B

2

Go的if语句可以在条件前添加初始化语句,初始化的变量作用域仅限于if-else块内。

A

B

3

使用for range遍历切片时,range返回的值是副本,修改该值不会影响原切片元素。

A

B

4

Go的标准for循环由三个部分组成:初始化、条件、后置语句,它们用分号分隔,都可以省略。

A

B

5

Go中可以使用标签(label)配合break跳出多层嵌套循环。

A

B

6

Go使用for range遍历map时,遍历顺序是随机的,每次遍历可能得到不同的顺序。

A

B

单选题
7

Go中使用for range遍历数组、切片、map等数据结构时,range返回什么?

A

只返回索引或键

B

只返回值

C

返回索引/键和值

D

返回元素个数

8

Go的switch语句与C/Java相比,有什么不同?

A

每个case末尾需要break语句

B

每个case末尾自动break,不需要显式写

C

必须有default分支

D

case后只能是整数

9

Go中break和continue语句的作用分别是?

A

break跳出循环,continue跳过本次迭代继续下一次

B

break跳过本次迭代,continue跳出循环

C

break和continue都跳出循环

D

break和continue都跳过本次迭代

10

Go语言中if语句的条件表达式是否需要括号?

A

必须使用括号

B

不需要括号,但大括号{}必须有

C

括号和大括号都可省略

D

只在复杂条件时需要括号

11

Go语言中用于循环的关键字是?

A

for、while、do-while

B

只有for

C

for和while

D

loop

多选题
12

Go流程控制语句的特点包括?

A

只有for循环,没有while

B

if条件不需要括号

C

switch自动break

D

for range可遍历多种类型

E

可用标签跳出多层循环

13

Go switch语句的高级用法包括?

A

case可以是表达式

B

case可以匹配多个值

C

无表达式switch替代if-else链

D

type switch用于类型判断

E

fallthrough继续执行下一个case

14

Go for range可以遍历哪些数据类型?

A

数组和切片

B

map

C

字符串

D

channel

E

整数

填空题
15

Go的for range遍历:数组/切片返回 ________________________;map返回 ____________ 和 值;字符串返回 字节位置 和 字符。只需要索引时可省略 值 变量,只需要值时用 _ 忽略索引。

16

Go的 ____________ 用于 ____________ 循环, ____________ 用于 跳过 本次迭代继续 下一次 循环。多层嵌套循环可使用 标签 配合break跳出 指定 层循环。

17

Go switch语句: ____________ 分支匹配后 ____________ break,不需要 ____________ 写break。需要继续执行下一case使用 fallthrough 关键字。 default 分支可选,处理 其他 情况。无表达式switch中 case 写条件表达式。

18

Go if语句:条件 ____________ 括号, ____________ 大括号,大括号与 ____________ 必须在同一行。可在条件前写 初始化 语句,初始化变量 作用域 仅限于if-else 块 内。

19

Go for循环三种形式: ____________ 如 for i:=0; i<10; i++{}; ____________ 类似while; ____________ 需要 break 退出。for只有 一个 循环关键字,没有 while 和 do-while。

参考答案
1.正确 2.正确 3.正确 4.正确 5.正确 6.正确 7.C 8.B 9.A 10.B 11.B 12.A;B;C;D;E 13.A;B;C;D;E 14.A;B;C;D 15.索引;值;键 16.break;跳出;continue 17.case;自动;显式 18.不需要;必须有;if 19.标准for;条件for;无限for
想在手机上练习这套专题?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一个专题 GO标准库专题
下一个专题 → GO运行时专题
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码