发布网友 发布时间:2022-04-20 02:37
共3个回答
热心网友 时间:2023-09-10 09:16
处理前:{1,4,3,2},{8,6,5,7},{3,7,2,5},{4,8,6,1}热心网友 时间:2023-09-10 09:16
如果把四个含有四个元素的数组依次从上向下依次排列起来,这样两个嵌套的for循环就是把这个四行四列的数字从左上到右下的对角线上的元素按照从大到小的顺序排列起来。第二个单个for循环则是将第一个含有四个元素的数组输出。其实二维数组说起来是二维的,其实在内存上的排列都是依次排列的,并没有二维一说,只是为了让我们容易理解二维甚至*数组。但是这种理解并没有多大的用处,处理数组上的各个元素关键要理解好数组和指针,因为指针才是c语言的灵魂。尤其是在数组上,指针理解更加有助于处理数组。比如处理*数组,如a[i][j][k]甚至更高的维数,你就没法找到形象的行列概念了,这个三维数组意思就是a是一个数组,包含i个元素,每个元素都是个二维数组。这个二维数组包含j个元素,且每个元素都是一维数组。这个一维数组包含k个元素,这才是理解*数组正确的方式。另外数组名a是一个地址,a[i]也是个数组名,也是地址,a[i][j]也是个数组名,也是地址。虽然都是地址,但是代表的意义不一样,因为他们指向的数组是不同的,a指向的是三维数组,a[i]指向二维数组,a[i][j]指向一维数组。a[i][j][k]并不是地址了,而是具体的一个元素了。热心网友 时间:2023-09-10 09:17
将数列主对角线上的4个数按从大到小重新排列,输出新的数列。