/*
* 写一个函数将二维数组a[4][5]的第0行同第3行交换,第1行同第2行交换,并
* 在main函数中调用该函数,并打印出前后数组的值。
*/
#include <stdio.h>
void swap(int *a, int *b)
{
int temp;
temp = *a;
*a = *b;
*b = temp;
}
void array_reverse(int (*a)[5])
{
int i;
for (i = 0; i < 5; i++) {
swap(&a[0][i], &a[3][i]);
}
for (i = 0; i < 5; i++) {
swap(&a[1][i], &a[2][i]);
}
}
void array_dump(int (*a)[5])
{
int i, j;
for (i = 0; i < 4; i++) {
for (j = 0; j < 5; j++) {
printf("%5d ", a[i][j]);
}
printf("\n");
}
}
int main(void)
{
int a[4][5] = {
{ 1, 2, 3, 4, 5},
{ 6, 7, 8, 9, 10},
{11, 12, 13, 14, 15},
{16, 17, 18, 19, 20}
};
array_dump(a);
array_reverse(a);
array_dump(a);
return 0;
}
交换数组的第0行同第3行的值和交换第1行同第2行的值
最新推荐文章于 2021-12-04 20:26:37 发布