int z[10][10];
int *myPtr2;
int p;
int q;
myPtr2 = &(z[0][0]);
//load 2d array
for (p=0; p<10; p++) {
for (q=0; q<10; q++) {
*myPtr2 = q;
myPtr2 ++;
}
}
我的代码得到10行0-9的数字。
这些是我的方向:
创建一个大小为10 * 10的二维整数数组
。使用指针将从0到99的连续数字装入数组。
b。创建一个指针索引,使您可以写出选定的行。
c。创建一个输出单行的函数。
d。通过调用项目2c中的函数,写出从第0行开始到第9行的数组。
e。使用项2b中的指针索引,交换第0行、第9行、第3行、第4行
f。通过重复步骤d,确保行交换工作正常。
赋值q
只取值范围为0
~9
,需要取值范围为0
~99
。
您需要更改分配行以考虑以下行:
*myPtr2 = q + (10*p); // 10 is the row width