×

Control statement in C

What is a control statement?

A control statement helps us to control the flow of the program. The control statement helps us to execute the program's instructions in a user-defined order. Moreover, Control statement helps us make decisions, execute a set of statements repeatedly, or jump to another block of statements.

Types of Control Statements in C

There are three types of control statements in the C language

  1. Conditional control statement
  2. Jump Statements
  3. Loop control/ Iteration statements

1. Conditional Control Statement

Sometimes, we want to execute a statement if a condition is true. If the condition is false, we need to execute another set of statements. In such case, a conditional control statement will be helpful. To execute conditional control statements, there are 4 types of statements

  1. If statement
  2. If else statement
  3. Nested if statement
  4. Switch statement

If statement:

Suppose a statement can be used to control the flow of the statement if a particular condition is true. If the condition in the if statement is true, then the statement below the if statement is executed. Else the statements will not execute and directly jump to the main code.

Control statement in C

The syntax for the if statement:

if(condition)
{
Statements;
}

In the block diagram, if the condition is true, the statements below the if statement will be executed. Else main block statements will be executed.

Example:

#include <stdio.h>
int main() {
    int a=20;
    if(a==20){
        printf("Hello from if block\n");
    }
    printf("hello from outside the if block");


    return 0;
}

Output:

Control statement in C

Explanation:

In the above example, We have created an if block with the condition that returns true if a is equal to 20 or will return false. As the condition returns true, so the statement in the if block gets executed, and then statements outside the block is executed.

If-else statement:

If-else statement is an extension of the if statement. If the if statement fails, the statement outside the block executes, but if we want other statements to be executed if the condition fails, then the if-else block will come in handy.

The syntax for if-else statement:-

 if(expression)
	   {
	    statement-1;
	   }
	    else
	  {
	Statement-2;
 }

Example:

#include<stdio.h>
void main()
{
 int n;


 printf("Enter any number:");
 scanf("%d",&n);
 if(n%2==0)
	printf("Given number is even");
 else
	printf("Given number is odd");
 return 0;

Output:

Control statement in C

Explanation:

In the above example, we have taken input from the user using the scanf() function, and then we need to check for the even or odd number. To check, we have used an if-else statement. In the if condition, we took a%2==0, which means if the value divided by 2 gives a reminder as zero, then the output will be true, which means the statement inside the if block will be executed. If the condition returns false, then else block statement will be executed.

Nested if statement

Using an if statement within another if is called a nested if statement. If a series of decisions are involved, we use a nested if statement.

Syntax:- if(expression-1)
	   {
                If(expression-2)
	    {
	      ------------
	      ------------
	      {
	       Statements;
	       }
                }
	}

Syntax-2

if(expression-1)
{
 if(expression-2)
 {
   statements-1;
    }
   else
{
 statements-2;
  }
}
else
{ 
 if(expression-3)
 {
   statements-3;
   }
else
 {
  statements-4;
 }
}

Example:

#include<stdio.h>


void main()
{
 int a,b,c,max;
 
 printf("Enter any three numbers:");
 scanf("%d%d%d",&a,&b,&c);
 if(a>b)
 {
  if(a>c)
   max=a;
  else
   max=c;
  }
   else
   {
    if(b>c)
     max=b;
    else
     max=c;
    }
    printf("Max Value for given 3 numbers:%d",max);
 return 0;
 }

Output:

Control statement in C

Explanation:

The above code is written to find the maximum number among the 3 numbers taken from the user. In the above code, we have used a nested if statement. In the nested if statement, we have compared the three numbers with each other to find the maximum number.

Switch statement:

A switch statement is generally used to switch the statements according to the given condition. Generally, it performs different actions when different conditions (cases) are met. If a condition is satisfied among the given cases in the switch statement, it executes the associated statement.

Syntax:

Switch (expression or variable)
{  
 Case value 1;
	Statement1;
	Break;
----------------------
----------------------
Case value n;
	Statements n;
	Break.;
Default;
	Default statement;
}

A default statement should have a default condition so that the default statement will execute when a condition is not present in the cases.

Example:

#include<stdio.h>
void main()
{
 int a,b,opt;
 
 printf("Enter any two numbers:");
 scanf("%d%d",&a,&b);
 printf("1.Addition\n2.Subtraction\n3.Multiplication\n4.Division\n5.Enter Option");
 scanf("%d",&opt);
 switch(opt)
 {
	case 1 :
		printf("\nAddition %d and %d is %d",a,b,a+b);
		break;
	case 2 :
		printf("\nSubtraction %d and %d is %d",a,b,a-b);
		break;
	case 3 :
		printf("\nMultiplication %d and %d is %d",a,b,a*b);
		break;
	case 4 :
		printf("\nDivision %d and %d is %d",a,b,a-b);
		break;
	case 5 :
		printf("\nModulus %d and %d is %d",a,b,a%b);
		break;
	default :
		printf("\nInvalid Region:");
 }


} 

Output:

Control statement in C

Explanation:

In the above code, we have used switch statements to perform various arithmetic operations based on the input from the user. Suppose the input from the user is 1. In that case, the addition operation and similarly 2 for subtraction, 3 for multiplication, and 4 for the division if the number entered is not from the above then  default operation will be performed.

2. Jump statements

1. Break (keyword):-

If the break keyword is executed in a loop, the control moves the command outside the loop.

                                    Syntax:- break;                    (Passes control)

2. Continue (keyword):- Continue statement is the same as the break statement but instead of breaking the whole loop continue statement will skip the particular iteration of the loop and skip to the next one.

                                          Syntax:- continue;                     (Passes control)

3. Goto:-  The 'goto' statement is an unconditional control statement used during the execution of the program sequence by transfer of control to some other part of the program.

                        Syntax:- goto label;

Example:

#include <stdio.h>


int main() {
    int i;


for (i = 0; i < 10; i++) {
  if (i == 5) {
    break;
  }
  printf("%d\n", i);
}
}

Output:

Control statement in C

Explanation:

In the above example, we used the break keyword for a loop. As soon as the break statement executes, the loop will be stopped. The above code break statement will be executed when the i value equals 5. So when the i value is 5, the loop will be exited, which we observed in the output.

Example:

#include <stdio.h>


int main() {
    int i;


for (i = 0; i < 10; i++) {
  if (i == 5) {
    continue;
  }
  printf("%d\n", i);
}
}

Output:

Control statement in C

Explanation:

In the above code, we have used the continue statement. When the continue statement is executed, the loop will skip the particular iteration and go to the next iteration. In the above code, we have used the if statement to execute the continue statement. When the i value equals 5, the continue statement will execute and skip the printing of 5 and then continue to the next iteration.

Example:

#include<stdio.h>


int main(){
int n;
printf("Enter any number:");
scanf("%d",&n);
if(n==1)
	goto lb1;
if(n==2)
	goto lb2;
	printf("WECOME\n");
	lb1:
	printf("Label 1\n");
	lb2:
	printf("Label 2\n");


}

Output:

Control statement in C

Explanation:

In the above example, we have used the goto statement to move between the statements. When goto lb1 executes, the statement in the lb1 will be printed. Otherwise, if goto lb2 is executed, then a statement in the lb2 will be executed. In the output, we have given the number 2, lb2 executed, so lable 2 is printed in the output.

3.LOOP CONTROL STATEMENTS

Loop:- The process of repeatedly executing a block of statements is called a loop. C supports three types of looping statements. They are…

  • While Loop
  • do-while loop and
  • for-loop        

Any loop has three things. They are…

            1. Initialize the index

            2. Test condition

            3. Update the index

1. while loop:

It is a conditional control loop statement in C.

            Syntax:- while(test condition)

                          {

                            Statements;

                            }

While loop tests the condition, the statements in the while loop will execute if the condition is true.

Example:

#include<stdio.h>
void main()
{
	int n,i=1;
	
	printf("Enter no of elements:");
	scanf("%d",&n);
	printf("Natural Numbers from 1 to %d:\n",n);
	while (i<=n)
	{
		printf("%d\t",i);
		i++;
	}
	
}

Output:

Control statement in C

Explanation:

In the above code, we have used a while loop to print the natural numbers in the given range. Until and unless the i value is greater than or equal to the user entered value, the values will be printed.

2. do-while loop:

 It is an alternative form of a while loop. The minimum no of execution of 'do-while' is '1".

Syntax:- do
	 {
       Statements;
	 }
	While(test condition);

Example:

#include<stdio.h>


void main()
{
	int n,i=1;
	
	printf("Enter any number:");
	scanf("%d",&n);
	printf("Natural numbers form 1 to %d:\n",n);
	do
	{
		printf("%d\t",i);
		i++;
	}
	while(i<=n);
	
}

Output:

Control statement in C

Explanation:

In the above, we used the do while loop to print the natural numbers. It is the same as the while loop, but even if the while loop condition is failed, statements in the do loop will be executed once.

3. for loop:

 It is C's most commonly used loop statement. It consists of three expressions.

Syntax:- for(exp1; exp2; exp3)
	         {
		Statements;
		}

Example:

#include<stdio.h>
void main()
{
	int n,sum=0,i;
	
	printf("Enter any number:");
	scanf("%d",&n);
	for(i=1;i<=n;i++)
	{
		if(n%i==0)
		sum=sum+i;
	}
	if(n==sum)
		printf("Given number is perfect");
	else
		printf("Given number is not perfect  ");
	
}

Output:

Control statement in C

Explanation:

In the above code, we have used for loop to print if the number is perfect or not. In the loop, we assigned the i value with 1, then compared the i value with a given number. Then if the condition is true, the statement will be executed, and once the statements are executed, the i value will be incremented.


Related Topics

2f in C language

Float data type in c: Double-precision floating-point numbers with up to 17 significant digits are stored in the FLOAT data type. FLOAT is equivalent to C's double data type and IEEE...

3 minutes read.

What is algorithm in C?

What is an algorithm? In computer programming languages, an algorithm is set of statement that solves a particular problem. In C, first step of every algorithm is Start and last step of...

3 minutes read.

For Loop in C Programming Examples

The Syntax of the For Loop for (initialization statement; termination condition; modifying (increment/ decrement) statement) {       /* main body of the For loop */     } In for loop, the initialization command...

6 minutes read.

Data Types in C

Data type is a very important concept in C programming language. Simply, “A data type is the classification of data values that a data item can have.” We need to...

11 minutes read.

C Program to find the size of a File

Before knowing about the Program, you need to understand what the size of a file is. After that, you should know how it is going to work with the given...

4 minutes read.

Run Time Polymorphism in C

What is polymorphism? Polymorphism refers to the existence of various forms. Polymorphism can be simply defined as a message's capacity to be presented in multiple forms. An individual who can have...

4 minutes read.

Compilation Process in C language

What is the Compilation Process?  The compilation is a method whereby the source code is converted into object code. It is achieved with compiler assistance. The compiler tests the source code for syntactic...

3 minutes read.

Comma Operator in C

What is a comma operator? The comma operator in the C programming language has the least priority. The comma operator is essentially a binary operator that operates on the first operand...

4 minutes read.

Displaying Array in C

Reference a collection of variables of similar data type in an array using a single element. The parts are stored next to each other. When declaring an array, you must specify...

4 minutes read.

Entry Control Loop in C

Initially, an entry control loop verifies the termination condition at the entry point. After that, its control passes to the main body of the while or for loop if the...

3 minutes read.

#define in C

#define in C In the C programming language, the preprocessor directive acts an important role within which the #define directive is present that is used to define the constant or the...

3 minutes read.

Simple hash() function in C

Introduction In this context, we briefly discuss HASH FUNCTION, HASHING or HASH TABLE in C. It is a function used to map data and mapped arbitrary sizes to the fixed-size values. The...

7 minutes read.

Floor() Function in C

Floor() function is a built-in function in C which is defined in the math.h header file. This function is used to return the nearest integer value which is less than...

4 minutes read.

C program that does not Suspend when Ctrl+Z is Pressed

In Programming when a program breakdown and runs surprisingly in the terminal compiler the developer has the ability to prevent the program from running unequivocally. For expressly halting the program,...

3 minutes read.

Star Program in C Language

Star Program in C Star patterns are a sequence of * or any other character used to construct any pattern or any like-square geometric form, triangle, hollow square, pyramid, rhombus, etc.  Many programmers worldwide highly...

4 minutes read.

Results of Comparison Operations in C and C++

In this tutorial, we will explore comparison operators and how the system should compare an incoming value supplied as a context parameter to a given value or range of values. A...

2 minutes read.

Flexible Array Members in a Structure in C

There is flexibility to declare array from c99 generation onwards that declaration of the collections can be made possible without even mentioning its dimension, which means that the displays are...

4 minutes read.

gets() function in C

gets() is a pre-define or built-in function present in the stdio.h header file. stdio stands for standard input and output. gets() function is used to read a stream and store...

4 minutes read.

Self-referential structure in C

Self-referential structure in C A self-referential structure is a structure that can have members which point to a structure variable of the same type. They can have one or more pointers...

3 minutes read.

Union in C

Union is a user-defined data type that is used to hold the different types of elements like structure. In union, all members share the same memory location. Syntax: union [union name] { ...

1 minute read.