Computer StudyMCQ Computer ScienceUGC NET

C Programming Questions and Answers – Data Types and Sizes – 2

C Programming Questions and Answers – Data Types and Sizes – 2

1.Comment on the output of this C code?

#include <stdio.h>

int main()

{

float f1 = 0.1;

if (f1 == 0.1)

printf(“equal\n”);

else

printf(“not equal\n”);

}

a) equal

b) not equal

c) Output depends on compiler

d) None of the mentioned

View Answer

Answer:b

Explanation:0.1 by default is of type double which has different representation than float resulting in inequality even after conversion.

Output:

$ cc pgm4.c

$ a.out

not equal

 

2.Comment on the output of this C code?

#include <stdio.h>

int main()

{

float f1 = 0.1;

if (f1 == 0.1f)

printf(“equal\n”);

else

printf(“not equal\n”);

}

a) equal

b) not equal

c) Output depends on compiler

d) None of the mentioned

View Answer

Answer:a

Explanation:0.1f results in 0.1 to be stored in floating point representations.

Output:

$ cc pgm5.c

$ a.out

Equal

 

3.What is the output of this C code (on a 32-bit machine)?

#include <stdio.h>

int main()

{

int x = 10000;

double y = 56;

int *p = &x;

double *q = &y;

printf(“p and q are %d and %d”, sizeof(p), sizeof(q));

return 0;

}

a) p and q are 4 and 4

b) p and q are 4 and 8

c) Compiler error

d) p and q are 2 and 8

View Answer

Answer:a

Explanation:Size of any type of pointer is 4 on a 32-bit machine.

Output:

$ cc pgm6.c

$ a.out

p and q are 4 and 4

 

4.Which is correct with respect to size of the datatypes?

a) char > int > float

b) int > char > float

c) char < int < double

d) double > char > int

View Answer

Answer:c

Explanation:char has lesser bytes than int and int has lesser bytes than double in any system

 

5.What is the output of the following C code(on a 64 bit machine)?

#include <stdio.h>

union Sti

{

int nu;

char m;

};

int main()

{

union Sti s;

printf(“%d”, sizeof(s));

return 0;

}

a) 8

b) 5

c) 9

d) 4

View Answer

Answer:d

Explanation:Since the size of a union is the size of its maximum datatype, here int is the largest hence 4.

Output:

$ cc pgm7.c

$ a.out

4

 

6.What is the output of this C code?

#include <stdio.h>

int main()

{

float x = ‘a’;

printf(“%f”, x);

return 0;

}

a) a

b) run time error

c) a.0000000

d) 97.000000

View Answer

Answer:d

Explanation:Since the ASCII value of a is 97, the same is assigned to the float variable and printed.

Output:

$ cc pgm8.c

$ a.out

97.000000

 

7.Which of the datatypes have size that is variable?

a) int

b) struct

c) float

d) double

View Answer

Answer:b

Explanation:Since the size of the structure depends on its fields, it has a variable size.

Answer:c

Output:

$ cc pgm.c

$ a.out

$

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button