#include<stdio.h>
#define SIZE 5
void copy_arr(double target[],double ar[],int n);
void copy_ptr(double *target,double *ar, int n);
void copy_ptrs(double *target,double *ar, double *ah);
int main(void)
{
double source[SIZE] = {1.1, 2.2, 3.3, 4.4, 5.5};
double target1[SIZE];
double target2[SIZE];
double target3[SIZE];
double targets[4][SIZE];
int i;
copy_arr(target1,source,SIZE);
copy_ptr(target2,source,SIZE);
copy_ptrs(target3,source,source+5);
for(i=0;i<5;i++)
{
targets[0][i] = source[i];
printf("targets[0][%d] = %.1lf\n",i,source[i]);
}
for(i=0;i<5;i++)
{
targets[1][i] = target1[i];
printf("targets[1][%d] = %.1lf\n",i,target1[i]);
}
for(i=0;i<5;i++)
{
targets[2][i] = target2[i];
printf("targets[2][%d] = %.1lf\n",i,target2[i]);
}
for(i=0;i<5;i++)
{
targets[3][i] = target3[i];
printf("targets[3][%d] = %.1lf\n",i,target3[i]);
}
return 0;
}
void copy_arr(double target[],double ar[],int n)
{
int i;
for(i=0;i<n;i++)
target[i]=ar[i];
for(i=0;i<n;i++)
printf("target1[%d] = %.1lf\n",i,target[i]);
}
void copy_ptr(double *target,double *ar, int n)
{
int i;
for(i=0;i<n;i++)
{
*(target+i)=*(ar+i);
printf("target2[%d] = %.1lf\n",i,target[i]);
}
}
void copy_ptrs(double *target,double *ar,double *ah)
{
int i=0;
while(ar<ah)
{
*target = *ar;
printf(“target3[%d] = %.1lf\n”,i++,*target);
ar++;
target++;
}
}