3. Loop Statements
 
  There are several loop statements:
– The while loop
– The for loop
– The do-while loop
– The break and continue keywords
 
3.1 Loops – While and For
 
3.1.1 while statement
 
– Simplest loop structure – evaluate body as long as condition is true
– Condition evaluated first, so body may never be executed
 
 
3.1.2 for statement
 
– Inside parentheses, three expressions, separated by semicolons:
Initialization; Condition; Increment
– Expressions can be empty (condition assumed to be “true”)
int factorial(int n)
{
int i, j=1;
for (i=1; i<=n; i++) j *= i;
return j;
}
int factorial(int n)
{
int i=1; int j=1;
while (i<=n) {
j *= i;
i++;
}
return j;
}
int factorial(int n) {
{
int i, j;
for (i=1, j=1, i<=n; j*=i, i++) ;
return j;
}
 
3.1.3 The do-while Loop
 
The syntax of the do-while loop is
 
 
Example
 
 
3.2 Break and Continue
 
The break Keyword
– Sometimes want to terminate a loop early
– break; exits innermost loop or switch statement to exit early
 
The continue Keyword
– Use to skip an iteration
– continue; skips rest of innermost loop body, jumping to loop condition
 
 
3.3 Goto and Labels
 
3.3.1 goto statement
 
   C provides the infinitely-abusable goto statement, and labels to branch to.
goto allows you to jump unconditionally to arbitrary part of your code (within the same function).
the location is identified using a label. a label is a named location in the code. It has the same form    as a variable followed by a ’:’
 
   Formally, the goto statement is never necessary, and in practice it is almost always easy to write code without it [1]. Dijkstra. Go To Statement Considered Harmful. Communications of the ACM 11(3),1968.
– Excess use of goto creates sphagetti code.
– Using goto makes code harder to read and debug.
– Any code that uses goto can be written without using one.
 
3.3.2 error handling
 
   Language like C++ and Java provide exception mechanism to recover from errors. In C, goto provides a convenient way to exit from nested blocks.
 
 
 
 
이전페이지 / 4 / 다음페이지