PPS - Ch-6.Control Structure in C
PPS - Ch-6.Control Structure in C
Control Structure in C
1. Decision Making
2. Loops
3. Break and Continue Statement
4. Switch… case Statement
5. goto and label Statement
1. Decision Making
● Decision making is used to specify the order in which statements are executed.
Syntax of if...else
if (test Expression)
{
// codes inside the body of if
}
else
{
// codes inside the body of else
}
Example: if...else statement
// Program to check whether an integer entered by the user is odd or even
#include <stdio.h>
int main()
{
int number;
printf("Enter an integer: ");
scanf("%d",&number);
// True if remainder is 0
if( number%2 == 0 )
printf("%d is an even integer.",number);
else
printf("%d is an odd integer.",number);
return 0;
}
1.3 if...else if....else Statement
● The if...else statement executes two different codes depending upon whether
the test expression is true or false. Sometimes, a choice has to be made from
more than 2 possibilities.
● The if...else if…else statement allows you to check for multiple test
expressions and execute different codes for more than two conditions
Syntax of if...else if....else statement.
Example: if...else if....else statement
// Program to relate two integers //checks if number1 is greater than number2.
using =, > or < else if (number1 > number2)
#include <stdio.h> {
int main() printf("Result: %d > %d",
{ number1, number2);
int number1, number2; }
printf("Enter two integers: "); // if both test expression is false
scanf("%d %d", &number1,&number2); else {
//checks if two integers are equal. printf("Result: %d < %d",number1, number2);
if(number1 == number2) }
{ return 0;
printf("Result: %d = %d“,number1,number2); }
}
1.4 Nested if else statement
● Nested if else statement is same like if else statement, where new block of if else
statement is defined in existing if or else block statement.
● Used when user want to check more than one conditions at a time.
Syntax of Nested If else Statement
Example of Nested if else Statement
2. Loops
► Loops are used in programming to repeat a specific block until some end condition is
met.
o for loop
o while loop
o do...while loop
o Nested loops
2.1 for Loop
// codes
}
for loop Flowchart
Example: for loop
// Program to calculate the sum of for(count = 1; count <= n; ++count)
first n natural numbers
{
// Positive integers 1,2,3...n are known as
natural numbers sum += count;
}
#include <stdio.h> printf("Sum = %d", sum); return 0;
int main(){ }
int n, count, sum = 0;
printf("Enter a positive integer: ");
scanf("%d", &n);
2.2 while loop
while (testExpression)
{
//codes
}
Example: while loop
/ Program to find factorial of // loop terminates when number is less than or
a number equal to 0
// For a positive integer n, factorial = 1*2*3...n while (number > 0) {
// factorial = factorial*number; factorial *=
number;
#include <stdio.h>
int main(){ number;
int number; long factorial; }
printf("Enter an integer: "); scanf("%d",&number); printf("Factorial= %lld", factorial); return 0;
factorial = 1;
2.3 do...while loop
► The do..while loop is similar to the while loop with one important difference.
► The body of do...while loop is executed once, before checking the test
expression.
{
// codes
}
while (testExpression);
Example: do...while loop
// Program to add numbers until user enters zero
#include <stdio.h>
int main() {
double number, sum = 0;
// loop body is executed at least once
do{
printf("Enter a number: "); scanf("%lf",
&number); sum += number;
}while(number != 0.0); printf("Sum = %.2lf",sum);
return 0;
}
2.4 Nested loops
► C programming allows to use one loop inside another loop
statement(s);
}
2.4 Nestedloops (Con..)
► Syntax while loop
while(condition) {
while(condition) {
statement(s);
}
statement(s);
}
3. Break And Continue Statement
► What is BREAK meant?
► The break statement is used with decision making statement such as if...else.
break;
How break statement works?
Flowchart Of Break Statement
Example: break statement
3.2 Continue Statement
► The continue statement skips some statements inside the loop.
► The continue statement is used with decision making statement such as if...
else.
► continue;
Flowchart of Continue Statement
How Continue Statement Works?
Example: continue statement
// Program to calculate sum of // If user enters negative number,
maximum of 10 numbers loop is terminated
// Negative numbers are skipped if(number < 0.0) {
from calculation
# include <stdio.h> continue;
}
int main(){ // sum = sum + number;
int i; sum += number;
double number, sum = 0.0; }
printf("Sum = %.2lf",sum);
for(i=1; i <= 10; ++i) { return 0;
printf("Enter a n%d: ",i); }
scanf("%lf",&number);
4. Switch Statement
► The if...else if…else statement allows you to execute a block code among many
alternatives. If you are checking on the value of a single variable in if...else if…else
statement, it is better to use switch statement.
► The switch statement is often faster than nested if...else (not always).
easy to understand.
Syntax of switch...case
switch (n){
case constant1:
// code to be executed if n is equal to constant1; break;
case constant2:
// code to be executed if n is equal to constant2; break;
….
default:
// code to be executed if n doesn't match any constant
}
Switch Statement Flowchart
Example: switch Statement
// Program to create a simple calculator
// Performs addition, subtraction, multiplication or division
depending the input from user
# include <stdio.h>
int main() {
char operator;
double firstNumber,secondNumber; printf("Enter an
operator (+, , *,): ");
scanf("%c", &operator); printf("Enter two operands: ");
case '':
printf("%.1lf %.1lf = %.1lf",firstNumber, secondNumber, firstNumbersecondNumber); break;
case '*':
printf("%.1lf * %.1lf = %.1lf",firstNumber, secondNumber, firstNumber*secondNumber); break;
case '/':
printf("%.1lf / %.1lf = %.1lf",firstNumber, secondNumber, firstNumber/firstNumber); break;
goto label;
... .. ...
... .. ...
... .. ...
label:
statement;
What is Label?
► The label is an identifier. When goto statement is encountered, control of the program
jumps to label: and starts executing the code.
Example: goto Statement
// Program to calculate the sum and average of maximum of 5
number
// If user enters negative number, the sum and average of previously
entered positive number is displayed
# include <stdio.h>
int main(){