Lecture11.ppt

advertisement
C Programming
Lecture 11
The switch Statement
 The
switch statement is a
multiway conditional
statement generalizing the
if-else statement.
switch
switch (expression)
{
case constant1: statement
...
statement
case constant_2: statement
...
statement
case constant_n: statement
...
statement
default
: statement
...
statement
} /* end switch */
The break Statement

The break statement causes a
jump out of a switch
statement.
• Execution continues after the
closing brace of the switch
statement.
Example Using the switch Statement
switch (val) {
case 1:
++a_cnt;
break;
case 2:
case 3:
++b_cnt;
break;
default:
++other_cnt;
}
The val expression must
be of an integer type.
The constant integral
expressions following the
case labels must all be
unique.
The Effect of a switch Statement



Evaluate the switch expression.
Go to the case label having a constant
value that matches the value of the
expression found in step 1.
• If a match is not found, go to the
default label.
• If there is no default label,
terminate the switch.
Terminate the switch when a break
statement is encountered, or by
“falling off the end”.
Bell Labs Industrial
Programming Style

Follow normal rules of English, where
possible.
• e.g., put a space after a comma



Put one space on either side of a
binary operator.
Indent code in a consistent fashion to
indicate flow of control.
Put braces as indicated in the
following example:
for (i = 0; i < n; ++i) {
. . . /* indent 3 spaces */
}
Student Style

Place beginning and ending
braces in the same column.
while (i < 10)
{
. . .
}

Either style for braces is
acceptable in our class.
Misuse of Relational Operators
int k = 8;
if (2 < k < 7)
printf(“true”); /*true is printed*/
else
printf(“false”);
int k = 8;
if (2 < k && k < 7)
printf(“true);
else
printf(“false”); /*false is printed*/
Download