C Primer Plus10-6

本文提供了一个实例,展示了如何初始化一个二维double数组,并利用自定义函数将其复制到另一个二维数组中。重点在于理解二维数组的结构和如何通过一维数组复制函数实现二维数组间的数据转移。
/*6.编写一个程序,初始化一个二维 double 数组,并利用练习 2 中的任一函数来把这个数组复制
到另一个二维数组(因为二维数组是数组的数组,所以可以使用处理一维数组的函数来复制数组的每个子数组)。*/

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

void copy2(double *, double *, int);
void copy1(double*, double*, int);

int main()
 {    
     int i, j;
     double source[2][3] = {11, 22, 33, 44, 55, 66};
     double target[2][3] = {0};

     copy2(source, target, 2);

     for (i = 0; i < 2; i++)
      {
          for (j = 0; j < 3; j++)
              printf("%.2lf\t",target[i][j]);
          printf("\n");
      }

     system("pause");
     return 0;
 }

void copy2(double (*source )[3], double (*target)[3], int n)
 {
   int i;
   for(i = 0; i < n; i++)
   copy1( *(source+i), *(target+i), 3);
 }

void copy1(double *p1, double *p2, int n)
 {
   int i;
   for (i=0; i<n; i++)
   p2[i] = p1[i];
 }

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值