18070 矩阵行交换或列交换

思路

  1. **行交换函数**:交换二维数组中指定的两行。

  2. **列交换函数**:交换二维数组中指定的两列。

伪代码

  1. **行交换函数**:
  • 遍历指定的两行的每一列。

  • 使用交换函数`swap`交换这两行对应列的元素。

  1. **列交换函数**:
  • 遍历指定的两列的每一行。

  • 使用交换函数`swap`交换这两列对应行的元素。

C++代码

cpp 复制代码
#include <stdio.h>

void swap(int *a, int *b)
{
    int temp;
    temp = *a;
    *a = *b;
    *b = temp;
}

void col(int a[][4], int i, int j)
{
    for (int k = 0; k < 4; k++)
    {
        swap(&a[k][i], &a[k][j]);
    }
}

void row(int a[][4], int i, int j)
{
    for (int k = 0; k < 4; k++)
    {
        swap(&a[i][k], &a[j][k]);
    }
}

int main()
{
    int a[4][4];
    int i, j;
    for (i = 0; i < 4; i++)
        for (j = 0; j < 4; j++)
            scanf("%d", &a[i][j]);
    col(a, 0, 2);
    row(a, 0, 2);
    col(a, 1, 3);
    row(a, 1, 3);
    col(a, 0, 3);
    row(a, 0, 3);
    for (i = 0; i < 4; i++)
    {
        for (j = 0; j < 4; j++)
            printf("%d ", a[i][j]);
        printf("\n");
    }
    return 0;
}
相关推荐
朝朝辞暮i7 小时前
C++ 第 21 课:struct —— 把一组相关数据打包在一起
开发语言·c++·算法
青梅橘子皮7 小时前
Blue---二分算法(二分查找与二分答案)
算法
长河7 小时前
Java的GC(垃圾回收)中,标记无用对象的核心方法是可达性分析算法
java·jvm·算法
月光船幽幽7 小时前
加性偏移外推提升参数识别可靠性
python·算法
H.莓飛8 小时前
【数据结构】队列
linux·数据结构·centos
Ivanqhz8 小时前
层归一化、残差、前馈网络与激活函数简述
服务器·数据库·人工智能·深度学习·算法
不会就选b9 小时前
算法日常・每日刷题--<动态规划>3
数据结构·算法
H.莓飛9 小时前
【数据结构】队列_OJ题
linux·数据结构·centos
-dzk-9 小时前
【堆】LC 347.前 K 个高频元素
算法·堆
H.莓飛10 小时前
【数据结构】栈_OJ题
linux·数据结构·算法·centos