Vidyalelo
C Programming · Q47

Arrays and Strings

Programming · C Programming · question 47

Q47

What will be the output of the program? #include void main() float arr[] = 12.4, 2.3, 4.5, 6.7; printf("%d", sizeof(arr)/sizeof(arr[0]));

A.
5
B.
4
Answer
C.
6
D.
7
E.
None of these

Answer: Option B

Solution

Answer: Option B
Solution:

The sizeof function return the given variable. Example: float a=10; sizeof(a) is 4 bytes
>> float arr[] = {12.4, 2.3, 4.5, 6.7}; The variable arr is declared as an floating point array and it is initialized with the values.

>> printf("%d", sizeof(arr)/sizeof(arr[0]));
The variable arr has 4 elements. The size of the float variable is 4 bytes.
Hence 4 elements x 4 bytes = 16 bytes
sizeof(arr[0]) is 4 bytes
Hence 16/4 is 4 bytes
Hence the output of the program is '4'.