C - DECISION MAKING
CONTROL STATEMENT AND BRANCHING
Md. Maruf Bangabashi
Lecturer
Department of Computer Science
C - DECISION MAKING
? Decision making structures require that the
programmer specify one or more conditions to be
evaluated or tested by the program, along with a
statement or statements to be executed if the
condition is determined to be true, and optionally,
other statements to be executed if the condition is
determined to be false.
C - DECISION MAKING CONT.
Following is the general form
of a typical decision making
structure found in most of the
programming languages:
C programming language
assumes
any non-zero and non-null v
alues as true, and if it is
either zero or null, then it is
assumed as false value.
TYPES OF CONTROL STATEMENTS
C language provides following types of decision making statements.
Statement Description
1. if statement An if statement consists of a Boolean expression followed by one
or more statements.
2. if...else statement An if statement can be followed by an optional else statement,
which executes when the Boolean expression is false.
3. nested if statements You can use one if or else if statement inside
another if or else if statement(s).
4. if...else if..else statement An if statement can be followed by an optional else
if...else statement, which is very useful to test various
conditions using single if...else if statement.
5. switch case-statement A switch statement allows a variable to be tested for equality
against a list of values.
6. nested switch statements You can use one switch statement inside another switch
statement(s).
7. Ternary operator ? : ?: can be used to replace if...else statements
8. goto statement The goto statement transfers control to a label.
1. IF STATEMENT
? An if statement consists of a Boolean expression
followed by one or more statements.
? Syntax:
If the expression evaluates to true, then the block of
code inside the if statement will be executed.
If expression evaluates to false, then the first set of
code after the end of the if statement will be executed.
C language assumes
any non-zero and non-null values as true and if it is
either zero or null, then it is assumed as false value.
IF FLOW DIAGRAM
CODE EXAMPLE
2. IF...ELSE STATEMENT
? An if statement can be followed by an optional else statement,
which executes when the Boolean expression is false.
? Syntax:
If the Boolean expression evaluates to true, then the if
block of code will be executed, otherwise else block of code
will be executed.
IF…ELSE FLOW DIAGRAM
CODE EXAMPLE : IF ELSE
3. THE IF...ELSE IF...ELSE STATEMENT
? An if statement can be followed by an optional else
if...else statement, which is very useful to test various
conditions using single if...else if statement.
? When using if , else if , else statements there are few
points to keep in mind:
⚫ An if can have zero or one else's and it must come after any
else if's.
⚫ An if can have zero to many else if's and they must come
before the else.
⚫ Once an else if succeeds, none of the remaining else if's or
else's will be tested.
THE IF...ELSE IF...ELSE SYNTAX.
CODE EXAMPLE: IF...ELSE IF...ELSE
4. C - NESTED IF STATEMENTS
? It is always legal in C to nest if-else statements,
which means you can use one if or else if statement
inside another if or else if statement(s).
? Syntax:
You can nest else if...else in the similar way as you
have nested if statement.
CODE EXAMPLE: NEST ELSE IF...ELSE
5. C - SWITCH STATEMENT
? A switch statement allows a variable to be tested for
equality against a list of values.
? Each value is called a case, and the variable being
switched on is checked for each switch case.
? Syntax:
RULES APPLY TO A SWITCH STATEMENT:
? The expression used in a switch statement must have an integral or
enumerated type.
? You can have any number of case statements within a switch. Each
case is followed by the value to be compared to and a colon.
? The constant-expression for a case must be the same data type as
the variable in the switch, and it must be a constant or a literal.
? When the variable being switched on is equal to a case, the statements
following that case will execute until a break statement is reached.
? When a break statement is reached, the switch terminates, and the
flow of control jumps to the next line following the switch statement.
? Not every case needs to contain a break. If no break appears, the flow
of control will fall through to subsequent cases until a break is
reached.
? A switch statement can have an optional default case, which must
appear at the end of the switch.
? The default case can be used for performing a task when none of the
cases is true. No break is needed in the default case.
SWITCH-CASE FLOW DIAGRAM
CODE EXAMPLE: SWITCH-CASE