R语言循环中break语句运行结果与预期不符问题求助
R语言while循环输出差异原因解答
你遇到的差异本质是R控制台默认输出格式和数值内容本身的表述差异,具体原因如下:
- 首先你的代码运行逻辑完全正确:循环从i=1开始执行,当i等于5时会触发
i %% 5 == 0的判断条件执行break终止循环,所以实际输出的数值就是1、2、3、4四个数,和你教授的表述完全一致。 - 你在控制台看到的每行带
[1]的输出,是R语言print()函数的默认输出特性:每次单独调用print()输出单个数值时,会自动添加索引标识[1]且每次输出占独立一行,这是控制台的格式附加内容,不属于输出的数值本身。
如果需要得到你教授描述的1 2 3 4同一行输出的效果,可以将代码里的print(i)替换为cat(i, " ")即可,cat()函数不会附加额外的格式标识,且默认不会自动换行。
内容的提问来源于stack exchange,提问作者Bradley Brewer
相关产品推荐
相关产品推荐

