C Programming - Structures, Unions, Enums
|
|
|
|
Exercise"Nothing in life is to be feared, it is only to be understood."
- Marie Curie
|
| 1. |
Point out the error in the program?
struct emp
{
int ecode;
struct emp *e;
};
|
| A. |
Error: in structure declaration | | B. |
Linker Error | | C. |
No Error | | D. |
None of above |
Answer: Option B
Explanation:
This type of declaration is called as self-referential structure. Here *e is pointer to a struct emp.
|
| 2. |
Point out the error in the program?
typedef struct data mystruct;
struct data
{
int x;
mystruct *b;
};
|
| A. |
Error: in structure declaration | | B. |
Linker Error | | C. |
No Error | | D. |
None of above |
Answer: Option C
Explanation:
Here the type name mystruct is known at the point of declaring the structure, as it is already defined.
|
| 3. |
Point out the error in the program?
#include<stdio.h>
int main()
{
struct a
{
float category:5;
char scheme:4;
};
printf("size=%d", sizeof(struct a));
return 0;
}
|
| A. |
Error: invalid structure member in printf | | B. |
Error in this float category:5; statement | | C. |
No error | | D. |
None of above |
Answer: Option B
Explanation:
Bit field type must be signed int or unsigned int.
The char type: char scheme:4; is also a valid statement.
|
| 4. |
Point out the error in the program?
struct emp
{
int ecode;
struct emp e;
};
|
| A. |
Error: in structure declaration | | B. |
Linker Error | | C. |
No Error | | D. |
None of above |
Answer: Option C
Explanation:
The structure emp contains a member e of the same type.(i.e) struct emp. At this stage compiler does not know the size of sttructure.
|
| 5. |
Point out the error in the program?
#include<stdio.h>
int main()
{
struct emp
{
char name[20];
float sal;
};
struct emp e[10];
int i;
for(i=0; i<=9; i++)
scanf("%s %f", e[i].name, &e[i].sal);
return 0;
}
|
| A. |
Error: invalid structure member | | B. |
Error: Floating point formats not linked | | C. |
No error | | D. |
None of above |
Answer: Option E
Explanation:
At run time it will show an error then program will be terminated.
Sample output: Turbo C (Windows)
c:\>myprogram
Sample
12.123
scanf : floating point formats not linked
Abnormal program termination
|
|
|