Exercise: Structures Unions Enums

Questions for: Structures Unions Enums

Point out the error in the program?
#include<stdio.h>

int main()
{
    union a
    {
        int i;
        char ch[2];
    };
    union a z1 = {512};
    union a z2 = {0, 2};
    return 0;
}
A:
Error: invalid union declaration
B:
Error: in Initializing z2
C:
No error
D:
None of above
Answer: B
No answer description is available. Let's discuss.
Point out the error in the program in 16-bit platform?
#include<stdio.h>

int main()
{
    struct bits
    {
        int i:40;
    }bit;

    printf("%d\n", sizeof(bit));
    return 0;
}
A:
4
B:
2
C:
Error: Bit field too large
D:
Error: Invalid member access in structure
Answer: C
No answer description is available. Let's discuss.
Point out the error in the program?
#include<stdio.h>
#include<string.h>
void modify(struct emp*);
struct emp
{
    char name[20];
    int age;
};
int main()
{
    struct emp e = {"Sanjay", 35};
    modify(&e);
    printf("%s %d", e.name, e.age);
    return 0;
}
void modify(struct emp *p)
{
     p ->age=p->age+2;
}
A:
Error: in structure
B:
Error: in prototype declaration unknown struct emp
C:
No error
D:
None of above
Answer: B
The struct emp is mentioned in the prototype of the function modify() before declaring the structure.To solve this problem declare struct emp before the modify() prototype.
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: B

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 

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: A
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.
Ad Slot (Above Pagination)
Quiz