C Programming - Control Instructions - Discussion
Discussion Forum : Control Instructions - Point Out Correct Statements (Q.No. 9)
9.
Which of the following sentences are correct about a switch loop in a C program?
1: | switch is useful when we wish to check the value of variable against a particular set of values. |
2: | switch is useful when we wish to check whether a value falls in different ranges. |
3: | Compiler implements a jump table for cases used in switch. |
4: | It is not necessary to use a break in every switch statement. |
Discussion:
17 comments Page 1 of 2.
Surender said:
1 decade ago
@jump Table
A jump table is an abstract structure used to transfer control to another location.
#include<stdio.h>
int main(int argc, char **argv)
{
int i;
scanf("%d",&i);
switch(i)
{
case 1:
printf("\nIts %d",i);
break;
case 2:
printf("\nIts %d",i);
break;
case 3:
printf("\nIts %d",i);
break;
case 4:
printf("\nIts %d",i);
break;
case 5:
printf("\nIts %d",i);
break;
default: printf("\nIts not in range of 1-5");
}
}
In this program if 3 is true, then it will directly jump to body of case 3, & it will keep executing all statements until it want gets a break statement.
A jump table is an abstract structure used to transfer control to another location.
#include<stdio.h>
int main(int argc, char **argv)
{
int i;
scanf("%d",&i);
switch(i)
{
case 1:
printf("\nIts %d",i);
break;
case 2:
printf("\nIts %d",i);
break;
case 3:
printf("\nIts %d",i);
break;
case 4:
printf("\nIts %d",i);
break;
case 5:
printf("\nIts %d",i);
break;
default: printf("\nIts not in range of 1-5");
}
}
In this program if 3 is true, then it will directly jump to body of case 3, & it will keep executing all statements until it want gets a break statement.
Mrunali said:
1 decade ago
We can use it but it is not efficient and hence not preferred. Instead we can use an if statement to check for a range of values.
Eg. to check whether value of variable x lies between 0 and 100.
1.switch-case
switch(x)
{
case 0:
case 1:
case 2:
.
.
.
.
case 99:
case 100:printf("True");break;
default: printf("False");break;
}
//This is very long and tedious and hence not useful. Instead we can Accomplish this in a few lines only using if statement.
2.if-else
if(x>=0 && x<=100)
printf("True");
else printf("False");
Eg. to check whether value of variable x lies between 0 and 100.
1.switch-case
switch(x)
{
case 0:
case 1:
case 2:
.
.
.
.
case 99:
case 100:printf("True");break;
default: printf("False");break;
}
//This is very long and tedious and hence not useful. Instead we can Accomplish this in a few lines only using if statement.
2.if-else
if(x>=0 && x<=100)
printf("True");
else printf("False");
Shoeb said:
1 decade ago
Hello
If v don't knw the ans...
by reading 4th option v say its 100% rit.
then check out of A B C D wch hav 4, so v got only B & C hav 4
so discard A&D now B hav 1 3 & C hav 2 Extra
Then read only 2nd option
if 2 is right then surely ans is C else
ans is 100% B.
Such typ Of technique is used for Finding the exactly correct ans in very short time.
thnx hav a nic day
If v don't knw the ans...
by reading 4th option v say its 100% rit.
then check out of A B C D wch hav 4, so v got only B & C hav 4
so discard A&D now B hav 1 3 & C hav 2 Extra
Then read only 2nd option
if 2 is right then surely ans is C else
ans is 100% B.
Such typ Of technique is used for Finding the exactly correct ans in very short time.
thnx hav a nic day
Himanshu said:
1 decade ago
We can check if a particular number falls in a range using switch. That's why according to me option 2 should be correct.
For example if x=5 & we hav to check if x falls in 2 to 7
switch(x)
{ case 2:
case 3:
case 4:
case 5:
case 6:
case 7:printf("in range");
break;
default:printf("not in range");
}
For example if x=5 & we hav to check if x falls in 2 to 7
switch(x)
{ case 2:
case 3:
case 4:
case 5:
case 6:
case 7:printf("in range");
break;
default:printf("not in range");
}
Kartik Agarwal said:
8 years ago
Why statement 2 is wrong?
We can check for ranges.
/*example*/
switch(a)
{
case 2:
case 3:
case 4:
/* some statements */
break;
case 5:
case 6:
case 7:
/* some statements */
break;
}
We can check for ranges.
/*example*/
switch(a)
{
case 2:
case 3:
case 4:
/* some statements */
break;
case 5:
case 6:
case 7:
/* some statements */
break;
}
(1)
Meer said:
1 decade ago
In some particular situations in switch statement we can control the execution by using break; and then it terminates the execution of the program in number of cases of the switch.
Meer said:
1 decade ago
Break statement is not neccesary in every case of the switch statement. In some programs we can implement switch cases without using break;.
Mounika said:
9 years ago
We can't check the ranges of non-integer values through switch statement, and so switch is not useful in checking the ranges of a number.
Mounika said:
9 years ago
We can't check the ranges of non-integer values through switch statement, and so switch is not useful in checking the ranges of a number.
Aswini said:
1 decade ago
Yes, we can use switch for checking whether the given value falls under a range or not. So how can it be incorrect?
Post your comments here:
Quick links
Quantitative Aptitude
Verbal (English)
Reasoning
Programming
Interview
Placement Papers