题解 | #矩阵交换#

矩阵交换

https://www.nowcoder.com/practice/ec44d4ff8c794b2f9205bdddbde96817

#include <stdio.h>
int main() 
{
    int n,m;
    scanf("%d %d",&n,&m);
    int i=0;
    int j=0;
    int arr[n][m];
    //输入
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            scanf("%d",&arr[i][j]);
        }
    }
    int cnt=0;
    scanf("%d",&cnt); //改变次数
    char ch;
    int x,y;
    int swap; //交换数
    for(i=0;i<cnt;i++)
    {
        //getchar(); 
        //getchar只吸收掉前面一次输入的换行,注意只有一次
        //在后面加scanf前面多加个空格,可以预防多次
        scanf(" %c %d %d",&ch,&x,&y);
        //修改
        if(ch =='r') //行变换
        {
            for(j=0;j<m;j++)  //不要用i
            {
                swap=arr[x-1][j];
                arr[x-1][j]=arr[y-1][j];
                arr[y-1][j]=swap;
            }
        }
        else if(ch =='c') //列变换
        {
            for(j=0;j<n;j++)  //不要用i
            {
                swap=arr[j][x-1];
                arr[j][x-1]=arr[j][y-1];
                arr[j][y-1]=swap;
            }
        }
    }
    //输出
    for(i=0;i<n;i++)
    {
        for(j=0;j<m;j++)
        {
            printf("%d ",arr[i][j]);
        }
        printf("\n");
    }
    return 0;
}

全部评论

相关推荐

03-11 18:00
辽宁大学 安卓
这怎么还花钱买上了.....
不愿吃饼的变色龙很感性:没事,我不是目标院校,练花钱的机会都没有
点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
03-10 14:27
已编辑
点赞 评论 收藏
分享
评论
1
1
分享

创作者周榜

更多
牛客网
牛客企业服务