Write a program where the calling function must simply pass an appropriate array pointer and maximum number of elements as arguments. These functions may also be written explicitly in terms of indirect access.

C Programming Language / Pointer in C Language

694

Program:

#include <stdio.h>
#define MAX 50
int main()
{
	int arr[MAX],n;
	int getdata(int *, int);
	void show(int *, int);
	n = getdata(arr, MAX);
	show(arr, n);
	return 0;
}
/* Function reads scores in an array. */
int getdata(int *a, int n)
{
	int x, i = 0;
	printf("\n Enter the array size\n");
	scanf("%d",&n);
    printf("\n Enter the array elements one by one\n");
	while(i < n)
	{
		scanf("%d", &x);
		*(a + i) = x;
		i++;
	}
	return i;
}
void show(int *a, int n)
{
	int i;
	for(i=0;i<n;++i)
	printf("\n %d", *(a+i));
}

Output:

 Enter the array size
5

 Enter the array elements one by one
10
11
12
13
14

 10
 11
 12
 13
 14  

Explanation:

None

This Particular section is dedicated to Programs only. If you want learn more about C Programming Language. Then you can visit below links to get more depth on this subject.