Decision
Making Statements / Conditional Statements :
C program executes program sequentially. Sometimes, a program
requires checking of certain conditions in program execution. C provides
various key condition statements to check condition and execute statements
according conditional criteria.
These statements are called as 'Decision Making Statements' or
'Conditional Statements.'
Followings are the different conditional statements used in C.
If Statement :
This
is a conditional statement used in C to check condition or to control the flow
of execution of statements. This is also called as 'decision making statement
or control statement.' The execution of a whole program is done in one
direction only.
Syntax:
if(condition)
{
statements;
}
In above syntax, the
condition is checked first. If it is true, then the program control flow goes
inside the braces and executes the block of statements associated with it. If
it returns false, then program skips the braces. If there are more than 1 (one)
statements in if statement then use { } braces else it is not necessary to use.
Program
:
#include <stdio.h>
#include <conio.h>
void main()
{
int a;
a=5;
clrscr();
if(a>4)
printf("\nValue of A is greater than 4 !");
if(a==4)
printf("\n\n Value of A is 4 !");
getch();
}
Output :
Value of A is greater than 4 !_
f-Else Statement :
This
is also one of the most useful conditional statement used in C to check
conditions.
Syntax:
if(condition)
{
true statements;
}
else
{
false statements;
}
In above syntax, the
condition is checked first. If it is true, then the program control flow goes
inside the braces and executes the block of statements associated with it. If
it returns false, then it executes the else part of a program.
Program
:
#include <stdio.h>
#include <conio.h>
void main()
{
int no;
clrscr();
printf("\n Enter Number :");
scanf("%d",&no);
if(no%2==0)
printf("\n\n Number is even !");
else
printf("\n\n Number is odd !");
getch();
}
Output :
Enter Number : 11
Number is odd !_
Nested If-Else Statement :
It is
a conditional statement which is used when we want to check more than 1
conditions at a time in a same program. The conditions are executed from top to
bottom checking each condition whether it meets the conditional criteria or
not. If it found the condition is true then it executes the block of associated
statements of true part else it goes to next condition to execute.
Syntax:
if(condition)
{
if(condition)
{
statements;
}
else
{
statements;
}
}
else
{
statements;
}
In above syntax, the
condition is checked first. If it is true, then the program control flow goes
inside the braces and again checks the next condition. If it is true then it
executes the block of statements associated with it else executes else part.
Program
:
#include <stdio.h>
#include <conio.h>
void main()
{
int no;
clrscr();
printf("\n Enter Number :");
scanf("%d",&no);
if(no>0)
{
printf("\n\n Number is greater than 0 !");
}
else
{
if(no==0)
{
printf("\n\n It is 0 !");
}
else
{
printf("Number is less than 0 !");
}
}
getch();
}
Output :
Enter Number : 0
It is 0 !_
Switch case Statement :
This
is a multiple or multiway brancing decision making statement.
When
we use nested if-else statement to check more than 1 conditions then the
complexity of a program increases in case of a lot of conditions. Thus, the
program is difficult to read and maintain. So to overcome this problem, C
provides 'switch case'.
Switch
case checks the value of a expression against a case values, if condition
matches the case values then the control is transferred to that point.
Syntax:
switch(expression)
{
case expr1:
statements;
break;
case expr2:
statements;
break;
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '
case exprn:
statements;
break;
default:
statements;
}
In
above syntax, switch, case, break are keywords.
expr1,
expr2 are known as 'case labels.'
Statements
inside case expression need not to be closed in braces.
Break
statement causes an exit from switch statement.
Default
case is optional case. When neither any match found, it executes.
Program
:
#include <stdio.h>
#include <conio.h>
void main()
{
int no;
clrscr();
printf("\n Enter any number from 1 to 3 :");
scanf("%d",&no);
switch(no)
{
case 1:
printf("\n\n It is 1 !");
break;
case 2:
printf("\n\n It is 2 !");
break;
case 3:
printf("\n\n It is 3 !");
break;
default:
printf("\n\n Invalid number !");
}
getch();
}
Output 1
:
Enter any number from 1 to 3 : 3
It is 3 !_
Output 2
:
Enter any number from 1 to 3 : 5
Invalid number !_
* RULES FOR DECLARING SWITCH CASE :
·
The case label should be integer or character constant.
·
Each compound statement of a switch case should contain break
statement to exit from case.
·
Case labels must end with (:) colon.
* ADVANTAGES OF SWITCH CASE :
·
Easy to use.
·
Easy to find out errors.
·
Debugging is made easy in switch case.
·
Complexity of a program is minimized.
No comments:
Post a Comment