Point Out Errors

Question 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 C

Explanation :

This type of declaration is called as self-referential structure. Here *e is pointer to a struct emp.


Question 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.


Question 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.


Question 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 A

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.


Question 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 B

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