2012-08-09 192 views
-3

if语句有一定的条件,然后我在if语句中用另一个条件使用while循环,if语句中的条件是否会在每次迭代中被测试?如果语句后跟循环

LIST-SEARCH'(L,k) 
x=L.nil.next 
if x!=L.nil 
    while x.key!=k 
     x=x.next 
return x 
+2

你可以发布你的代码而不是描述它吗?举个例子,我会发现协助更容易。 – hmjd 2012-08-09 13:03:44

+0

这不是C .. – hmjd 2012-08-09 13:11:33

+0

是的,我知道,我只是给你一个伪代码。 – 2012-08-09 13:12:20

回答

8

如果你的描述是这样的:

if(conditionA) 
{ 
    while(conditionB) 
    { 
      /* ... */ 
    } 
} 

,再没有。 conditionA仅测试一次,而conditionB则经过测试以检查是否应该为每次循环运行再次执行循环。

1

知道这些事情的方法不用问就是通过调试器运行你的程序,并逐步执行每一行。你应该注意到if-test行只有一次命中,而while()循环中的测试在每次迭代时都被命中。大多数IDE包含具有此功能的调试器,或者您可以使用像gdb这样的命令行实用程序。