Sail E0 Webinar
Question


Which of the following statements are correct about the program below?


#include<stdio.h>
int main()
{
int size, i;
scanf("%d", &size);
int arr[size];
for(i=1; i
Options:
A .  The code is erroneous since the subscript for array used in for loop is in the range 1 to size.
B .  The code is erroneous since the values of array are getting scanned through the loop.
C .  The code is erroneous since the statement declaring array is invalid.
D .  The code is correct and runs successfully.
Answer: Option C

The statement int arr[size]; produces an error, because we cannot initialize the

 size of array dynamically. Constant expression is required here.

Example: int arr[10];

One more point is there, that is, usually declaration is not allowed after calling

 any function in a current block of code. In the given program the declaration

 int arr[10]; is placed after a function call scanf().



Was this answer helpful ?
Next Question

Submit Solution

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

Latest Videos

Latest Test Papers