C goto statement ❮ Edit Details
The goto statement is known as jump statement in C. As the name suggests, goto is used to transfer the program control to a predefined label. The goto statment can be used to repeat some part of the code for a particular condition. It can also be used to break the multiple loops which can't be done by using a single break statement. However, using goto is avoided these days since it makes the program less readable and complecated.
Syntax:
- label:
- //some part of the code;
- goto label;
goto example
Let's see a simple example to use goto statement in C language.
- #include <stdio.h>
- int main()
- {
- int num,i=1;
- printf("Enter the number whose table you want to print?");
- scanf("%d",&num);
- table:
- printf("%d x %d = %d\n",num,i,num*i);
- i++;
- if(i<=10)
- goto table;
- }
Output:
Enter the number whose table you want to print?10 10 x 1 = 10 10 x 2 = 20 10 x 3 = 30 10 x 4 = 40 10 x 5 = 50 10 x 6 = 60 10 x 7 = 70 10 x 8 = 80 10 x 9 = 90 10 x 10 = 100
When should we use goto?
The only condition in which using goto is preferable is when we need to break the multiple loops using a single statement at the same time. Consider the following example.
- #include <stdio.h>
- int main()
- {
- int i, j, k;
- for(i=0;i<10;i++)
- {
- for(j=0;j<5;j++)
- {
- for(k=0;k<3;k++)
- {
- printf("%d %d %d\n",i,j,k);
- if(j == 3)
- {
- goto out;
- }
- }
- }
- }
- out:
- printf("came out of the loop");
- }
0 0 0 0 0 1 0 0 2 0 1 0 0 1 1 0 1 2 0 2 0 0 2 1 0 2 2 0 3 0 came out of the loop