Control Instructions - Point Out Errors Multiple Questions and Answers.
Exercise Questions ::
Control Instructions
6. | Point out the error, if any in the program? |
|
#include<stdio.h>
int main()
{
int P = 10;
switch(P)
{
case 10:
printf("Case 1");
case 20:
printf("Case 2");
break;
case P:
printf("Case 2");
break;
}
return 0;
}
|
| A. | Error: No default value is specified |
| B. | Error: Constant expression required at line case P: |
| C. | Error: There is no break statement in each case. |
| D. | No error |
|
|
| Answer: Option B |
|
|
| Explanation: |
|
The compiler will report the error "Constant expression required" in the line case P: . Because, variable names cannot be used with case statements.
The case statements will accept only constant expression. |
| See More Information |
|
|
|
Tutorial Link: |
Published by:Michael Daani
7. | Point out the error, if any in the program? |
|
#include<stdio.h>
int main()
{
int i = 1;
switch(i)
{
case 1:
printf("Case1");
break;
case 1*2+4:
printf("Case2");
break;
}
return 0;
}
|
| A. | Error: in case 1*2+4 statement |
| B. | Error: No default specified |
| C. | Error: in switch statement |
| D. | No Error |
|
|
| Answer: Option D |
|
|
| Explanation: |
|
Constant expression are accepted in switch
It prints "Case1" |
| See More Information |
|
|
|
Tutorial Link: |
Published by:Michael Daani
8. | Point out the error, if any in the while loop? |
|
#include<stdio.h>
int main()
{
void fun();
int i = 1;
while(i <= 5)
{
printf("%d\n", i);
if(i>2)
goto here;
}
return 0;
}
void fun()
{
here:
printf("It works");
}
|
| A. | No Error: prints "It works" |
| B. | Error: fun() cannot be accessed |
| C. | Error: goto cannot takeover control to other function |
| D. | No Error |
|
|
| Answer: Option C |
|
|
| Explanation: |
|
label is used as the target of a goto statement, and that label must be within the same function as the goto statement.
Syntax: goto <identifier> ; Control is unconditionally transferred to the location of a local label specified by <identifier>. |
| See More Information |
|
|
|
Tutorial Link: |
Published by:Michael Daani
9. | Point out the error, if any in the program? |
|
#include<stdio.h>
int main()
{
int a = 10, b;
a >=5 ? b=100: b=200;
printf("%d\n", b);
return 0;
}
|
| A. | 100 |
| B. | 300 |
| C. | Error: L value required for b |
| D. | Garbage value |
|
|
| Answer: Option C |
|
|
| Explanation: |
|
Variable b is not assigned.
It should be like: b = a >= 5 ? 100 : 200; |
| See More Information |
|
|
|
Tutorial Link: |
Published by:Michael Daani
«