Is a For Loop always executed at least once?

为君一笑 提交于 2019-12-21 07:35:44

问题


According to my teacher, a for-loop always executes at least once, even if the condition is not met.

Example (like I know it from C++):

for (int i=6; i <=5; i++) {
    //irrelevant for this question
}

According to her, this loop would execute at least once, yet it does not, or am I missing something? Is there any case, no matter what language, where this would execute once? To eliminate the thought in advance: yes, it was about for loops, not do-while-loops.

Edit:

Thanks for all those quick answers, I guess this case is already closed. Have a nice day/night.


回答1:


You could say a for-loop is always evaluated at least once.

But if a for-loop's condition is not met, its block will never execute.

Because you didn't ask about other loops, I won't address those.




回答2:


A loop will only execute while its condition is true. Since a for loop and a while loop both check the condition before the body is executed they will never execute if the condition is false.

The only loop that will is a do while loop. With a do while loop the condition is not evaluated until the end of the loop. Because of that a do while loop will always execute at least once.




回答3:


A for-loop always makes sure the condition is true before running the program. Whereas, a do-loop runs the program at least once and then checks the condition.




回答4:


An entry controlled loop will never execute if the condition is false, however, exit controlled loop will execute at least once.



来源:https://stackoverflow.com/questions/44932344/is-a-for-loop-always-executed-at-least-once

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!