0% found this document useful (0 votes)
53 views33 pages

Ekt120 Week02 Selection

This document discusses selection structures in C programming. It covers one-way selection using if statements, two-way selection using if-else statements, and multi-selection using if-else if statements. It also discusses compound statements, nested if statements, the conditional operator, and switch structures. Examples are provided to illustrate each concept.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
53 views33 pages

Ekt120 Week02 Selection

This document discusses selection structures in C programming. It covers one-way selection using if statements, two-way selection using if-else statements, and multi-selection using if-else if statements. It also discusses compound statements, nested if statements, the conditional operator, and switch structures. Examples are provided to illustrate each concept.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 33

UniMAP Sem II-09/10 EKT120: Computer Programming 1

Week 3 Selection Structures


UniMAP Sem II-09/10 EKT120: Computer Programming 2
Outline
Recall selection control structure
Types of selection
One-way selection
Two-way selection
Multi-selection
Compound statement
Nested if
Conditional operator
Switch structure
UniMAP Sem II-09/10 EKT120: Computer Programming 3
Recall..
Selection Structure
Used to choose among alternative
courses of action
C has three types: if, if..else, and
switch

UniMAP Sem II-09/10 EKT120: Computer Programming 4
The if selection structure
if structure is a single-entry/single-exit
structure
true

false

grade >= 60

print Pass



If students grade is greater than or equal to 60
Print Pass
UniMAP Sem II-09/10 EKT120: Computer Programming 5
The if..else selection
structure
Specifies an action to be performed
both when the condition is true and
when it is false





true

false

print Fail

print Pass

grade >= 60

If students grade is greater than
or equal to 60
print Pass
else
print Fail
UniMAP Sem II-09/10 EKT120: Computer Programming 6
Selection Statements
Used to control the flow of a program
Also called as decision or branches
Branches are conditions or choices used
to enable selection of program flow
UniMAP Sem II-09/10 EKT120: Computer Programming 7
Types of selection
One-way selection = if
Two-way selection = if..else
Multi-selection
Nested if
Switch structure = switch
UniMAP Sem II-09/10 EKT120: Computer Programming 8
One-way Selection = if
In C, a condition is represented by a logical (Boolean)
expression
true and false are logical (Boolean) values
The syntax of one-way selection is:

if (expression) statement;

If the value of the expression is true, statement is
executed;
if false, statement is not executed and the computer
goes on to the next statement in the program.
UniMAP Sem II-09/10 EKT120: Computer Programming 9
One-way Selection = if



true

false

grade >= 60

print Pass

If students grade is greater than or equal to 60
Print Pass
UniMAP Sem II-09/10 EKT120: Computer Programming 10
One-way Selection = if
..
if(grade >= 60)
printf(Pass);
..
..

UniMAP Sem II-09/10 EKT120: Computer Programming 11
One-way Selection = if
Another example:
char grade;

if(markah>= 90)
grade = 'A';

...
printf(Grade is : %c\n, grade);
UniMAP Sem II-09/10 EKT120: Computer Programming 12
One-way Selection = if
Another example:
if (temperature is greater than 70 degree
and it is not raining)
recommended activity is golfing

bool rain=false;

if((temp > 70) && !(rain))
printf(recommended activity is golfing);
UniMAP Sem II-09/10 EKT120: Computer Programming 13
One-way Selection = if
Common Errors
if score >= 90 //no parentheses
grade = 'A';
if(score >= 90); //; not here
grade = 'A';
UniMAP Sem II-09/10 EKT120: Computer Programming 14
Two-way Selection =
if..else
The syntax of two-way selection is:

if (expression)
statement1;
else
statement2;

If the value of the expression is true,
statement1 is executed;
if false, statement2 is executed
UniMAP Sem II-09/10 EKT120: Computer Programming 15
Two-way Selection =
if..else
true

false

print
Fail

print
Pass

grade >=
60

If students grade is greater than or equal
to 60
print Pass
else
print Fail
UniMAP Sem II-09/10 EKT120: Computer Programming 16
Two-way Selection =
if..else

if(grade >=60)
printf(Pass);
else
printf(Fail);

UniMAP Sem II-09/10 EKT120: Computer Programming 17
Two-way Selection =
if..else
Another example:
if (hour > 40.0) //Line 1
wages = 40.0 * rate +1.5 * rate * (hour - 40.0); //Line 2
else //Line 3
wages = hour * rate; //Line 4
If hour is 50, then the statement at Line 2 is
executed
If hour is 30, then the statement at Line 4 is
executed
UniMAP Sem II-09/10 EKT120: Computer Programming 18
Multi-selection = if-else if
The syntax is:
if(exp1)
stmt1;
else if(exp2)
stmt2;
else if(exp3)
stmt3;

else
stmt n;
An if-else if control structure
shifts program control, step by
step, through a series of
statement blocks.
UniMAP Sem II-09/10 EKT120: Computer Programming 19
Multi-selection = if-else if
E.g.
temp display
>30
0
c hot
20-30
0
c mild
10-20
0
c cold
<10
0
c very cold
temp >30 Print hot
true
false
temp > 20 Print mild
true
temp >10 Print cold
Print very cold
true
false
false
UniMAP Sem II-09/10 EKT120: Computer Programming 20
Multi-selection = if-else if
if(temp > 30)
printf( hot\n);
else if((temp >=20) && (temp<=30))
printf( mild\n);
else if(temp >=10) && (temp < 20))
printf(cold\n);
else
printf( very cold\n);
UniMAP Sem II-09/10 EKT120: Computer Programming 21
Compound (Block of) Statement
A compound statement (also called a
block of statements) takes the form of
{
statement 1; statement 2;
.
.
.
statement n;
}
It is considered a single statement


UniMAP Sem II-09/10 EKT120: Computer Programming 22
Compound (Block of) Statement
Example:
if (age > 18)
{
printf("Eligible to vote\n);
printf("No longer a minor\n);
}
else
{
printf("Not eligible to vote\n);
printf(Still a minor\n);
}
UniMAP Sem II-09/10 EKT120: Computer Programming 23
Nested if
When one control statement is within another, it is
said to be nested
if(exp1)
if(exp2)
statement1; OR
if(exp1)
{
statement1;
if(exp2)
statement2;
}
UniMAP Sem II-09/10 EKT120: Computer Programming 24
Nested if
Example:
if (temperature >= 50)
{
if (temperature >= 80)
printf( "Good day for swimming.\n);
else
printf( "Good day for golfing.\n);
}
else
printf("Good day to play tennis.\n);

UniMAP Sem II-09/10 EKT120: Computer Programming 25
Nested if
Another example

UniMAP Sem II-09/10 EKT120: Computer Programming 26
The Conditional Operator (? :)
The syntax of using the conditional operator
is: expression1 ? expression2 : expression3;
This is called a conditional expression.
The statement:
if (a >= b)
max = a;
else
max = b;
Is equivalent to the statement:
max = (a >= b) ? a : b;
UniMAP Sem II-09/10 EKT120: Computer Programming 27
switch Structures
Similar to if-else if control structure
The general form (syntax):
switch (expression)
{
case value1: statements1; break;
case value2: statements2; break;
.
.
.
case valuen: statementsn; break;
default: statements;
}

UniMAP Sem II-09/10 EKT120: Computer Programming 28
switch Structures
The break statement has a special
meaning and may or may not appear
after each statement.
In C, switch, case, break, and default
are reserved words.
In a switch structure, first the
expression is evaluated. The value of
the expression is then used to perform
the corresponding action.

UniMAP Sem II-09/10 EKT120: Computer Programming 29
switch Structures
The expression is usually an identifier.
The value of the expression can be only integral.
The expression is sometimes called the selector. Its
value determines which statement is selected for
execution.
A particular case value should appear only once.
One or more statements may follow a case label, so
you do not need to use braces to turn multiple
statements into a single compound statement.
The break statement may or may not appear after
each statement.


UniMAP Sem II-09/10 EKT120: Computer Programming 30
switch Structures
Example:
switch (grade)
{
case 'A': printf("The grade is A.); break;
case 'B': printf("The grade is B.); break;
case 'C': printf("The grade is C.); break;
case 'D': printf("The grade is D.); break;
case 'F': printf("The grade is F.); break;
default: printf("The grade is invalid.);
}
where, grade is a variable of the type char. If the
value of grade is, say 'A', the output is
The grade is A.
UniMAP Sem II-09/10 EKT120: Computer Programming 31
switch Structures
The switch statement executes according to the
following rules:
When the value of the expression is matched against a case
value (also called a label), the statements execute until
either a break statement is found or the end of the switch
structure is reached.
If the value of the expression does not match any of the
case values, the statements following the default label
execute. If the switch structure has no default label, and if
the value of the expression does not match any of the case
values, the entire switch statement is skipped.
A break statement causes an immediate exit from the
switch structure
UniMAP Sem II-09/10 EKT120: Computer Programming 32
Whats wrong??
UniMAP Sem II-09/10 EKT120: Computer Programming 33
End Week 2
Q & A!

You might also like