PTA-方阵循环右移

在这里插入图片描述
题解:

#include<stdio.h>  
int main(){  
    int a[10][10],i,j,n,m;  
    scanf("%d %d",&m,&n);  
    for(i=0;i<n;i++)  
        for(j=0;j<n;j++)  
            scanf("%d",&a[i][j]);  
    m=m%n;  //可能会出现m比n大,取余
    for(i=0;i<n;i++){  
        for(j=n-m;j<n;j++)   //先输出 右移的部分,差值 n- m
            printf("%d ",a[i][j]);  
        for(j=0;j<n-m;j++)   //输出剩下的部分   
            printf("%d ",a[i][j]);  
        printf("\n");  
    }         
    return 0;   
}

这里唯一的一点就是要注意,当m大于n的时候,取余就好了。

猜你喜欢

转载自blog.csdn.net/J_aSON_/article/details/106781302