c++怎么用三维数组
5个回答
展开全部
与一维和二维数组类似,以整型为例,三维数组的定义,赋值,和遍历操作如下:
1 定义:
int a[10][10][10];
这样就定义了一个10*10*10的三维数组。
2 赋值:
访问三维数组一个元素可以写作a[m][n][p]。于是将三维数组每个值分别输入的代码如下:
int i,j,k;
for(i = 0; i < 10; i ++)
for(j = 0; j < 10; j ++)
for(k = 0; k < 10; k ++)
cin>>a[i][j][k];
3遍历:
事实上,2中所介绍的赋值,实际上已经对数组元素做了一次遍历。
打印的方法如下:
int i,j,k;
for(i = 0; i < 10; i ++)
for(j = 0; j < 10; j ++)
for(k = 0; k < 10; k ++)
cout<<a[i][j][k];
从以上样例可以看出,三维数组只是比二维数组多了一个维度,遍历的时候需要多一重循环,访问元素的时候也多了一个下标。其它的并没有特别之处。依此类推,四维五维乃至更高维的数组也是类似的。不过更高维度的数组,在实际应用中很少使用。
展开全部
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以分别用下标变量管理和访问。
比如:要管理某年级6个班每个学生的4门成绩,可以开设数组
float score[6][40][4];
其中第1下标表示第几班,第2下标表示班中第几个学生(年级中每班最多40名学生),第3下标表示该学生第几门功课的成绩。
假设我们给2班第4名同学的第3门成绩赋值95,可以:
int class,number; class=1; number=3; score[class][number][2]=95;
输出该学生4门成绩可以:for ( i=0;i<4;i++ ) printf("%.1f ",score[1][3][i]); printf("\n");
比如:要管理某年级6个班每个学生的4门成绩,可以开设数组
float score[6][40][4];
其中第1下标表示第几班,第2下标表示班中第几个学生(年级中每班最多40名学生),第3下标表示该学生第几门功课的成绩。
假设我们给2班第4名同学的第3门成绩赋值95,可以:
int class,number; class=1; number=3; score[class][number][2]=95;
输出该学生4门成绩可以:for ( i=0;i<4;i++ ) printf("%.1f ",score[1][3][i]); printf("\n");
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
跟一二维的数组相同
如:int num[110][110][110];scanf("%d",num[5][2][4]);num[3][45][25]=v;之类的
如:int num[110][110][110];scanf("%d",num[5][2][4]);num[3][45][25]=v;之类的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不管几维数组在内存里面都是一维
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询