实现矩阵的列前移

●列前移 

对每一行的元素进行前移,遍历每一行,达到矩阵列的前移
void fun(int (*ss)[4],int num)                            
{
    
    
	int i=0;
	int j=0;
	int k=0;
	
	for(k=1;k<=4;k++)        // 列前移的次数
	{
    
    
	for(i=0;i<num;i++)       //对每一行的元素进行前移
	{
    
    
		int temp=ss[i][0];
		for(j=1;j<4;j++)
		{
    
    
			ss[i][j-1]=ss[i][j];
		}
		    ss[i][j-1]=temp;
		}	
		}	
}
int main()
{
    
      //定义一个二维数组,一个4行4列的矩阵
	int s[4][4]={
    
    {
    
    11,22,33,44},{
    
    55,66,77,88},{
    
    12,13,14,15},{
    
    23,24,25,30}};     
	int i=0;
	int j=0;
	for(i=0;i<4;i++)             //打印原矩阵
	{
    
    
		for(j=0;j<4;j++)
		{
    
    
			printf("%d ",s[i][j]);
		}
		printf("\n");
	}
	    printf("\n\n");
        fun(s,4);
    for(i=0;i<4;i++)      //打印列前移后的矩阵
	{
    
    
		for(j=0;j<4;j++)
		{
    
    
			printf("%d ",s[i][j]);
		}
		 printf("\n");
	 }
        return 0;
}

猜你喜欢

转载自blog.csdn.net/cfk17829572643/article/details/109687613