w3resource logo
C Programming Exercises

C Exercises: Allocate a block of memory for an array

C Variable Type : Exercise-11 with Solution

Write a C program to allocate a block of memory for an array.

Sample Solution:

C Code:

#include<stdio.h>
#include<stdlib.h>

int main ()
	{
		int i,n,num;
		int * my_array;
       printf("\nInput the number of elements to be stored in the array :");
       scanf("%d",&n);
   
       printf("Input %d elements in the array :\n",n);
		my_array = (int*) calloc ( n,sizeof(int) );
		if (my_array==NULL)
		{
			printf (" Requested memory allocation is wrong.");
			exit (1);
		}
		for ( i=0; i<n; i++ )
		{
			printf (" element %d : ",i+1);
			scanf ("%d",&my_array[i]);
		}
		printf (" Values entered in the array are : \n");
		for ( i=0; i<n; i++ )
			printf (" %d ",my_array[i]);
			printf ("\n\n");
		free (my_array);
		return 0;
	}

Sample Output:

Input the number of elements to be stored in the array :5                                                     
Input 5 elements in the array :                                                                               
 element 1 : 5                                                                                                
 element 2 : 10                                                                                               
 element 3 : 15                                                                                               
 element 4 : 20                                                                                               
 element 5 : 25                                                                                               
 Values entered in the array are :                                                                            
 5  10  15  20  25

C Programming Code Editor:

#include<stdio.h>
#include<stdlib.h>

int main ()
	{
		int i,n,num;
		int * my_array;
       printf("\nInput the number of elements to be stored in the array :");
       scanf("%d",&n);
   
       printf("Input %d elements in the array :\n",n);
		my_array = (int*) calloc ( n,sizeof(int) );
		if (my_array==NULL)
		{
			printf (" Requested memory allocation is wrong.");
			exit (1);
		}
		for ( i=0; i<n; i++ )
		{
			printf (" element %d : ",i+1);
			scanf ("%d",&my_array[i]);
		}
		printf (" Values entered in the array are : \n");
		for ( i=0; i<n; i++ )
			printf (" %d ",my_array[i]);
			printf ("\n\n");
		free (my_array);
		return 0;
	}

Improve this sample solution and post your code through Disqus