### Program 141:Arrange Rows and Columns in Ascending order (Method II)

Program 141:

```#include<stdio.h>

main()
{
int i,j,rows,col,k,temp;
printf("Enter number of rows and columns of a matrix\n");
scanf("%d %d",&rows,&col);
int a[rows][col],dummy[50][50],dummy2[50][50];

//Taking input of matrix
printf("Enter Matrix 1\n");
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
scanf("%d",&a[i][j]);
}
}

printf("Given /matrix is\n");
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
printf("%d\t",a[i][j]);
dummy[i][j]=a[i][j];//copying of array into another for temporary storage
}

printf("\n");
}

//Ascending order for rows
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
for(k=j+1;k<col;k++)
{
if(a[i][j]>a[i][k])
{
temp=a[i][j];
a[i][j]=a[i][k];
a[i][k]=temp;
}
}
}
}

printf("After arranging rows in ascending order\n");
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
printf("%d\t",a[i][j]);
}

printf("\n");
}
//For arranging columns in ascending order we can do transpose and apply above logic and again transpose it to get final output
//First transpose the original matrix stored in dummy and stored in dummy2
temp=rows;
rows=col;
col=temp;
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
dummy2[i][j]=dummy[j][i];
}
}
}
//Applying the same logic as above for dummy2
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
for(k=j+1;k<col;k++)
{
if(dummy2[i][j]>dummy2[i][k])
{
temp=dummy2[i][j];
dummy2[i][j]=dummy2[i][k];
dummy2[i][k]=temp;
}
}
}
}
//Again transpose of above matrix and store in dummy
temp=rows;
rows=col;
col=temp;
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
dummy[i][j]=dummy2[j][i];
}
}
printf("After arranging columns in ascending order\n");
for(i=0;i<rows;i++)
{
for(j=0;j<col;j++)
{
printf("%d\t",dummy[i][j]);
}

printf("\n");
}

}

```
Explanation:

//Coming Soon...

Output:

 Donate Buy me a coffee \$2.00 USD Buy me a burger \$5.00 USD Buy me a pizza \$10.00 USD
 Compiler Used by me C-Free 5.0(Recommended) Other Compilers Code Blocks(Recommended) Online Compilers Ideone(Remember to give input before executing online where ever necessary)