我正在看过去一年的计算机科学课程考试,我对一个问题感到困惑。我不知道它在问什么。我不是要求某人为我做这件事,但如果有人能帮我理解这个问题我想要做什么,我将不胜感激。
根据下面的规范编写一个完整的C程序来分配,初始化,打印和解除分配int类型变量的三维数组。三个数组维x,y和z的大小分别为3,2和4。
应根据以下函数
初始化数组元素f(x,y,z)= 5x + 6y + 7z
这意味着您的初始化代码如下所示:
myArray [x] [y] [z] = 5 * x + 6 * y + 7 * z;
以下是一些示例输出:
0 7 14 21
6 13 20 27
5 12 19 26
11 18 25 32
10 17 24 31
16 23 30 37
首先,我不明白问题是什么。我看到的唯一模式是每个值都是先前值+7。
编辑:Facepalm。谢谢安迪。我认为这完全不同。答案 0 :(得分:2)
作业中没有任何问题。有以下要求
编写一个完整的C程序来分配,初始化,打印和 根据,取消分配int类型变量的三维数组 符合以下规格
本声明中不清楚的是什么?
并且有一个例子如何初始化数组的每个元素
myArray[x][y][z] = 5 * x + 6 * y + 7 * z;
因此,您需要为每个数组维度为每个循环编写三个嵌套循环。
例如
for ( int x = 0; x < 3; x++ )
{
for ( int y = 0; y < 2; y++ )
{
for ( int z = 0; z < 4; z++ )
{
myArray[x][y][z] = 5 * x + 6 * y + 7 * z;
}
}
}
答案 1 :(得分:1)
他们希望您分配,填写和取消分配3D数组,因此您可能需要