malloc创建三维数组
1 #include <stdio.h> 2 #include <stdlib.h> 3 #include <malloc.h> 4 5 int main() 6 { 7 //f[0],f[][0]记录总数 8 //etc.有f[0]种等级的房间,f[i]代表第i种等级 9 //第i个等级的房间有f[i][0]间房间,f[i][j]代表第i种等级的第j个房间 10 //第f[i][j]个房间有f[i][j][0]张床 11 //f[i][j][k]为第i个等级的房间,第j间房间,第k张床 12 long ***f,i,j; 13 f=(long ***) malloc (sizeof(long **)*101); 14 for (i=1;i<=100;i++) 15 f[i]=(long **) malloc (sizeof(long *)*101); 16 for (i=1;i<=100;i++) 17 for (j=1;j<=100;j++) 18 f[i][j]=(long *) malloc (sizeof(long)*101); 19 //经测试可以在codeblocks,dev使用,但会提示warning 20 f[0]=1; 21 f[2][0]=5; 22 printf("%ld\n",f[0]); 23 printf("%ld\n",f[2][0]); 24 return 0; 25 }
f[0],f[i][0],f[i][j][0]记录每维总数
如:开一个a*b*c的三维空间,题目要求a*b*c小于某个值。