C Primer Plus第六版第十章编程第2题和第7题合并

#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++;
}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值