GATE CSE C Programming Practice Test – Structures & Unions | Set 1

Questions 86-90 of 100

Your score 0/100 0 answered
Correct 0 Incorrect 0 Unanswered 100 Accuracy 0%

Question 86

NAT · Numerical Answer 1 mark

Assume int is 4 bytes, char is 1 byte, and 4-byte alignment is enforced. What is sizeof(struct S) for:

CODE
struct S {
    char c1;
    int i;
    char c2;
};
Answers for question 86

Question 87

NAT · Numerical Answer 1 mark

What is the output of the following C code?

C
#include <stdio.h>
struct S {
    int a;
    int b;
};
int main(void) {
    struct S arr[3] = {{1, 2}, {3, 4}, {5, 6}};
    printf("%d", arr[1].b + arr[2].a);
    return 0;
}
Answers for question 87

Question 88

NAT · Numerical Answer 1 mark

Consider a union declared on a 32-bit architecture:

CODE
union Test {
    char arr[15];
    int i;
};

Assuming int alignment is 4 bytes, what is sizeof(union Test) in bytes?

Answers for question 88

Question 89

NAT · Numerical Answer 1 mark

What is printed by the C code?

C
#include <stdio.h>
struct Point {
    int x;
    int y;
};
int main(void) {
    struct Point p[2] = {{10, 20}, {30, 40}};
    struct Point *ptr = p;
    ptr++;
    printf("%d", ptr->y);
    return 0;
}
Answers for question 89

Question 90

NAT · Numerical Answer 2 mark

What is the output value printed?

C
#include <stdio.h>
struct S {
    int x;
};
int main(void) {
    struct S s = {100};
    struct S *p1 = &s;
    struct S **p2 = &p1;
    printf("%d", (**p2).x);
    return 0;
}
Answers for question 90
Scroll to Top