题解 | 矩阵交换

%c前面加个空格就可以输出了,看了解析里面的一位大佬才解决这个问题

#include <stdio.h>

int main() {
    int n = 0;
    int m = 0;
    int arr[10][10] = { 0 };
    scanf("%d %d", &n, &m);
    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            scanf("%d", &arr[i][j]);
        }
    }
    int k;
    scanf("%d", &k);
    char instruction;
    int a, b;
    for (int t = 0; t < k; t++) {
        scanf(" %c %d %d", &instruction, &a, &b);
        a -= 1;
        b -= 1;
        if (instruction == 'r') {
            for (int c = 0; c < m; c++) {
                int tem = arr[a][c];
                arr[a][c] = arr[b][c];
                arr[b][c] = tem;
            }
        }
        else if (instruction == 'c') {
            for (int r = 0; r < n; r++) {
                int tem = arr[r][a];
                arr[r][a] = arr[r][b];
                arr[r][b] = tem;
            }
        }
    }

    for (int i = 0; i < n; i++) {
        for (int j = 0; j < m; j++) {
            printf("%d ", arr[i][j]);
        }
        printf("\n");
    }

    return 0;
}

全部评论

相关推荐

Yki_:你要算时间成本呀,研究生两三年,博士三四年,加起来就五六年了,如果你本科去腾讯干五年,多领五年的年薪,加上公司内涨薪,可能到时候十五年总薪资也跟博士差不多
点赞 评论 收藏
分享
自学java狠狠赚一笔:骗你点star的,港卵公司,记得把star收回去
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务