I've added comments where I believe you should look to find errors.
Code:
// I don't know which compiler you are using, but shouldn't you
// also include stdlib.h or malloc.h?
#include <stdio.h>
#define Size 3
void store_data(int *arr);
void process(int *arr);
int main (void)
{
int *arr[Size],i,j;
for(i=0; i<Size; i++)
arr[i]=0;
for(i=0; i<Size; i++)
arr[i] = (int *) (malloc(15*sizeof(int)));
// in the following don't you want to check each arr[i] to
// be sure that the memory was allocated?
if(arr == NULL){
printf("Unable to get memory");
// if memory was allocated for say, arr[0] and arr[1] but
// not for arr[2], shouldn't you free the memory for
// arr[0] and arr[1] before exiting?
return 1;
}
for(i=0; i<Size; i++) {
for(j=0; j<15; j++) {
arr[i][j]=-1;
}
}
store_data(arr);
free( (void *)arr);
return 0;
}
void store_data(int *arr); // <--- that ";" shouldn't be there
{
int i,j;
// look at the scanf(...) line, aren't you putting
// all three of the integers that the user entered
// into the exact same memory location?
// Read the assignment description again, you should
// do a total of 15 prompts, 3 integers each time, into
// consecutive memory locations
for(i=0; i<3; i++) {
for(j=0; j<15; j++) {
printf("Enter three integer values: ");
scanf("%d %d %d", arr[i][j], arr[i][j], arr[i][j]);
}
}
}