【正确答案】正确答案:void fun(int(*s)[10],int *b, int*n,int mm,int nn) { int i,j; for(j=0;j < nn,j++) /* 将二维数组中的数据按列的顺序依次放入一维数组中*/ for(i=0;i < mm;i++) { b[*n]=*(*(s+i)+j); *n=*n+1; /*通过指针返回元素个数*/ } }
【答案解析】解析:题目要求实现将二维数组元素存入一维数组,需使用for循环语句来控制二维数组元素的下标,同时使用指针变量配合操作。可以用两个循环来处理问题,由于是按列的顺序取出,所以第1个循环用于控制列下标,第2个循环用于控制行下标。