求助!用指针变量作为参数定义一个函数,打印多个二维数组。
用指针变量作为参数定义一个函数,打印多个二维数组。题目就是这样了,各位帮帮忙,谢谢!
#include<stdio.h> #define SIZE(a) sizeof (a)/sizeof(*a) void fun(int* ,size_t ,size_t ); int main( void ) { int a[2][2]= { {1,2}, {3,4} }; int b[3][4]= { {1,2,3,4}, {5,6,7,8}, {9,10,11,12} }; fun((int* )a,SIZE(a),SIZE(*a)); fun((int* )b,SIZE(b),SIZE(*b)); return 0; } void fun(int* a,size_t i,size_t j) { size_t k=0; size_t t=j+1; for (;k!=i*t;++k) printf((k%t)^j?"%-4d":"\n",a[j*(k/t)+k%t]); }
[此贴子已经被作者于2017-11-21 21:26编辑过]