malloc 分配2维动态数组
#include <stdio.h>#include <stdlib.h>void main(){ int nrows,ncolumns; int **Array; int i,j; printf("please input nrows&ncolumns:\n"); scanf("%d%d",&nrows,&ncolumns); Array=(int **)malloc(nrows*sizeof(int *)); for(i=0;i<ncolumns;i++) Array[i]=(int *)malloc(sizeof(*Array)); for(i=0;i<nrows;i++) { for(j=0;j<ncolumns;j++) { Array[i][j]=1; printf("%d ",Array[i][j]); //动态数组的成员都可以用正常的数组下标 arrayx[i][j] } printf("\n"); } free(Array);}