Menu
CoddyTech

continue(继续)

本课属于 Coddy R 学习旅程的“基础知识”单元。第 41 课,共 78 课。

break 会完全退出循环,但有时你只想跳过当前迭代,继续执行下一次迭代。next 语句正是用来实现这一点的。

for (i in 1:5) {
  if (i == 3) {
    next
  }
  print(i)
}

输出:

[1] 1
[1] 2
[1] 4
[1] 5

当 i 等于 3 时,next 语句会跳过本次循环剩余的部分,因此不会打印 3。然后循环会像往常一样继续处理 4 和 5。

如果你想筛选出某些值,同时不停止整个循环,这会很有用。例如,只打印偶数:

for (num in 1:6) {
  if (num %% 2 != 0) {
    next
  }
  print(num)
}

输出:

[1] 2
[1] 4
[1] 6

这里使用 next 跳过奇数,只打印偶数。它和 break 的主要区别是,循环会继续运行,只是跳过特定的迭代。

challenge icon

挑战

简单

从输入中读取数字 n。使用 for 循环从 1 遍历到 n,并只打印不能被 4 整除的数字。

使用 next 语句跳过能被 4 整除的数字,并使用 print() 打印所有其他数字。

例如,如果输入是 10,输出应为:

[1] 1
[1] 2
[1] 3
[1] 5
[1] 6
[1] 7
[1] 9
[1] 10

注意,4 和 8 会被跳过,因为它们能被 4 整除。

亲手试试

# 读取输入
con <- file("stdin", "r")
n <- as.integer(suppressWarnings(readLines(con, n = 1)))

# TODO: 在下方编写你的代码
# 用 for 循环从 1 遍历到 n
# 用 next 语句跳过能被 4 整除的数字
# 用 print() 打印其他所有数字
quiz icon自我测试

这节课包含一个小测验。开始学习即可作答,并记录你的进度。

基础知识中的所有课

自己练习: R 在线编译器