for循环
for
循环用于多次执行相似的代码。其基本语法如下:
for (variable in sequence) {
# 在每次迭代中执行的代码
}
其中:
-
variable
是一个变量,用于在每次迭代中存储序列中的当前元素。 -
sequence
是一个向量,可以是数字序列、字符序列或其他可迭代对象。 - 在每次迭代中,
variable
会依次取sequence
中的每个元素的值,然后执行for
循环中的代码块。
例1:
> n= c(1,2,3)
> for(i in n){
+ print(i^2)
+ }
[1] 1
[1] 4
[1] 9
while循环
while
循环用于在条件为真时重复执行一段代码。其基本语法如下:
while (condition) {
# 在条件为真时执行的代码
}
其中:
-
condition
是一个逻辑表达式,当其值为TRUE
时,while
循环中的代码块会被执行。 - 在每次循环迭代开始时,会检查
condition
的值,如果为TRUE
,则执行循环中的代码块,然后再次检查condition
的值,直到condition
的值为FALSE
,循环结束。
例1:
# 初始化一个计数器
count <- 1
# 使用while循环打印输出计数器的值,并逐步递增计数器
while (count <= 5) {
print(count)
count <- count + 1
}
在上面这个例子中,while
循环会在count
小于等于5的条件下重复执行,每次迭代中打印输出count
的值,并递增count
的值。当count
的值超过5时,循环结束。 与for
循环相比,while
循环更适合在未知迭代次数的情况下进行循环,因为它只依赖于条件的真假。但需要注意的是,如果条件一直为TRUE
,while
循环会变成无限循环,导致程序永远无法结束,因此在使用while
循环时要确保条件最终会变为FALSE
。