#include<stdio.h>
int main()
{
int m,n,a[100][100],temp;
int (*pa)[100]=a;
scanf("%d %d",&m,&n);
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
scanf("%d",&*(*(pa+i)+j));//输入数据
}
}
for(int i=0;i<m;i++)//最外层循环是每一行一此循环
{
for(int j=0;j<n-1;j++)//排序数组
{
for(int k=j+1;k<n;k++)
{
if(*(*(pa+i)+k)<*(*(pa+i)+j))
{
temp=*(*(pa+i)+k);
*(*(pa+i)+k)=*(*(pa+i)+j);
*(*(pa+i)+j)=temp;
}
}
}
for(int l=0;l<n;l++)//每一行排序结束输出该行
{
printf("%d ",*(*(pa+i)+l));
}
printf("\n");//最后换行
}
return 0;
}
帮我把涉及指针这块解释一下,int (pa)[100]=a;和if(((pa+i)+k)<(*(pa+i)+j))