|   | #2吹水佬2019-08-05 04:33 #include <stdio.h> void _fun1(int a[2][3]) { printf("_fun1:\n"); int i,j; for (i=0; i<2; i++) { for (j=0; j<3; j++) printf("%d ", a[i][j]); printf("\n"); } printf("\n"); } void _fun2(int a[][3], int n) { printf("_fun2:\n"); int i,j; for (i=0; i<n; i++) { for (j=0; j<3; j++) printf("%d ", a[i][j]); printf("\n"); } printf("\n"); } void _fun3(int (*a)[3], int n) { printf("_fun3:\n"); int i,j; for (i=0; i<n; i++) { for (j=0; j<3; j++) printf("%d ", a[i][j]); printf("\n"); } printf("\n"); } void _fun4(int *a, int n, int m) { printf("_fun4:\n"); int i,j; for (i=0; i<n; i++) { for (j=0; j<m; j++) printf("%d ", *(a+m*i+j)); printf("\n"); } printf("\n"); } void _fun5(int *a[], int n, int m) { printf("_fun5:\n"); int i,j; for (i=0; i<n; i++) { for (j=0; j<m; j++) printf("%d ", a[i][j]); printf("\n"); } printf("\n"); } void _fun6(int *a, int n) { printf("_fun6:\n"); int i; for (i=0; i<n; i++) printf("%d ", a[i]); printf("\n"); } main() { int a[2][3]= {1,2,3,4,5,6}; _fun1(a); _fun2(a, 2); _fun3(a, 2); _fun4(*a, 2, 3); int i, *b[2]; for(i=0; i<2; i++) b[i] = a[i]; _fun5(b, 2, 3); _fun6(*a, 6); } | 
 程序代码:
程序代码:#include <stdio.h>
main() {
int a[3][4] = {
1,2,3,4,
5,6,7,8,
9,1,0,6
};
display(a, 3, 4);
show(a, 3, 4);
print(a, 3, 4);
}
display(int *q, int row, int col) {
int i,j;
for (i=0;i<row;i++) {
for (j=0;j<col; j++) {
printf("%d ",*(q + i*col +j));
}
printf("\n");
}
printf("\n");
}
show(int (*q)[4], int row, int col) {
int i,j;
int *p;
for (i=0;i<row;i++) {
p = q + i;
for (j=0;j<col;j++) {
printf("%d ", *(p + j));
}
printf("\n");
}
printf("\n");
}
print(int q[][4], int row, int col) {
int i,j;
for (i=0;i<row;i++) {
for(j=0;j<col;j++) {
printf("%d ", q[i][j]);
}
printf("\n");
}
printf("\n");
}
我再使用了c++语言 来写
 程序代码:
程序代码:#include<iostream>
using namespace std;
voiddisplay(int *q, int row, int col)
{
int i,j;
for (i=0;i<row;i++) {
for (j=0;j<col; j++) {
cout<<*(q + i*col +j);
}
                
}
       
};
void show(int (*q)[4], int row, int col) {
int i,j;
int *p;
for (i=0;i<row;i++) {
p = q + i;
for (j=0;j<col;j++) {
cout<< *(p + j);
}
                
}
        
};
void print(int q[][4], int row, int col) {
int i,j;
for (i=0;i<row;i++) {
for(j=0;j<col;j++) {
cout<<q[i][j];
}
               
}
        
};
int main()
{
int a[3][4] = {
1,2,3,4,
5,6,7,8,
9,1,0,6
};
display(a, 3, 4);
show(a, 3, 4);
print(a, 3, 4);
}
using namespace std;
voiddisplay(int *q, int row, int col)
{
int i,j;
for (i=0;i<row;i++) {
for (j=0;j<col; j++) {
cout<<*(q + i*col +j);
}
}
};
void show(int (*q)[4], int row, int col) {
int i,j;
int *p;
for (i=0;i<row;i++) {
p = q + i;
for (j=0;j<col;j++) {
cout<< *(p + j);
}
}
};
void print(int q[][4], int row, int col) {
int i,j;
for (i=0;i<row;i++) {
for(j=0;j<col;j++) {
cout<<q[i][j];
}
}
};
int main()
{
int a[3][4] = {
1,2,3,4,
5,6,7,8,
9,1,0,6
};
display(a, 3, 4);
show(a, 3, 4);
print(a, 3, 4);
}
结果很多在关于数组首地址处 有问题! 我自己学C++ 还没学到数组处,这里是建议我使用vector来完成二维数组的功能吗
