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;
}
相关推荐
sin_hielo6 分钟前
leetcode 3510
数据结构·算法·leetcode
Anastasiozzzz16 分钟前
力扣hot100 20.有效的括号 解析
java·算法·面试·力扣
苦藤新鸡16 分钟前
29.删除倒数第N个节点
数据结构·链表·力扣
sonadorje21 分钟前
通俗易懂的Gram矩阵讲解
人工智能·机器学习·矩阵
CrazyClaz21 分钟前
负载均衡算法
算法·负载均衡
重生之我是Java开发战士29 分钟前
【数据结构】Map、Set与哈希表底层原理
java·数据结构·散列表
嵌入式小能手30 分钟前
飞凌嵌入式ElfBoard-系统信息与资源之休眠
c语言·开发语言·算法
橘子师兄31 分钟前
C++AI大模型接入SDK—API接入大模型思路
开发语言·数据结构·c++·人工智能
tobias.b44 分钟前
408真题解析-2010-4-数据结构-平衡二叉树插入
数据结构·计算机考研·408真题解析
历程里程碑1 小时前
哈希3 : 最长连续序列
java·数据结构·c++·python·算法·leetcode·tornado